diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..5516c46 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,4665 @@ +{ + "name": "jetton-implementation-in-tact", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "dependencies": { + "@aws-crypto/sha256-js": "^4.0.0", + "@tact-lang/compiler": "^1.1.3", + "@tact-lang/emulator": "^3.2.2", + "@ton-community/sandbox": "^0.11.0", + "@ton-community/test-utils": "^0.3.0", + "@types/jest": "^29.5.3", + "@types/node": "^20.2.5", + "@types/qs": "^6.9.7", + "base64url": "^3.0.1", + "dotenv": "^16.3.1", + "enquirer": "^2.3.6", + "jest": "^29.6.2", + "open": "^8.4.0", + "prando": "^6.0.1", + "prettier": "^2.8.8", + "qs": "^6.11.0", + "ton": "^13.6.0", + "ton-core": "^0.51.0", + "ton-crypto": "^3.2.0", + "ton-emulator": "^2.1.1", + "ts-jest": "^29.1.1", + "ts-node": "^10.9.1", + "typescript": "^5.1.6" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + "dependencies": { + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@assemblyscript/loader": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/@assemblyscript/loader/-/loader-0.9.4.tgz", + "integrity": "sha512-HazVq9zwTVwGmqdwYzu7WyQ6FQVZ7SwET0KKQuKm55jD0IfUpZgN0OPIiZG3zV1iSrVYcN0bdwLRXI/VNCYsUA==" + }, + "node_modules/@aws-crypto/sha256-js": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-4.0.0.tgz", + "integrity": "sha512-MHGJyjE7TX9aaqXj7zk2ppnFUOhaDs5sP+HtNS0evOxn72c+5njUmyJmpGd7TfyoDznZlHMmdo/xGUdu2NIjNQ==", + "dependencies": { + "@aws-crypto/util": "^4.0.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-crypto/util": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-4.0.0.tgz", + "integrity": "sha512-2EnmPy2gsFZ6m8bwUQN4jq+IyXV3quHAcwPOS6ZA3k+geujiqI8aRokO2kFJe+idJ/P3v4qWI186rVMo0+zLDQ==", + "dependencies": { + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-sdk/types": { + "version": "3.290.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.290.0.tgz", + "integrity": "sha512-uQLD9tLv8Q87CwrSB/taUoQ8wkGeFb1Gygc+kt5oClfMFP9HYzu944kW/1R7/J5LtBLT1QFYccd4gz6eOUNlsw==", + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/types/node_modules/tslib": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", + "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==" + }, + "node_modules/@aws-sdk/util-utf8-browser": { + "version": "3.259.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.259.0.tgz", + "integrity": "sha512-UvFa/vR+e19XookZF8RzFZBrw2EUkQWxiBW0yYQAhvk3C+QVGl0H3ouca8LDBlBfQKXwmW3huo/59H8rwb1wJw==", + "dependencies": { + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/util-utf8-browser/node_modules/tslib": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", + "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==" + }, + "node_modules/@babel/code-frame": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "dependencies": { + "@babel/highlight": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.0.tgz", + "integrity": "sha512-gMuZsmsgxk/ENC3O/fRw5QY8A9/uxQbbCEypnLIiYYc/qVJtEV7ouxC3EllIIwNzMqAQee5tanFabWsUOutS7g==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.0.tgz", + "integrity": "sha512-PuxUbxcW6ZYe656yL3EAhpy7qXKq0DmYsrJLpbB8XrsCP9Nm+XCg9XFMb5vIDliPD7+U/+M+QJlH17XOcB7eXA==", + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.21.0", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-module-transforms": "^7.21.0", + "@babel/helpers": "^7.21.0", + "@babel/parser": "^7.21.0", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.21.0", + "@babel/types": "^7.21.0", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.2", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/core/node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==" + }, + "node_modules/@babel/generator": { + "version": "7.21.1", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.1.tgz", + "integrity": "sha512-1lT45bAYlQhFn/BHivJs43AiW2rg3/UbLyShGfF3C0KmHvO5fSghWd5kBJy30kpRRucGzXStvnnCFniCR2kXAA==", + "dependencies": { + "@babel/types": "^7.21.0", + "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz", + "integrity": "sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==", + "dependencies": { + "@babel/compat-data": "^7.20.5", + "@babel/helper-validator-option": "^7.18.6", + "browserslist": "^4.21.3", + "lru-cache": "^5.1.1", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", + "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz", + "integrity": "sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==", + "dependencies": { + "@babel/template": "^7.20.7", + "@babel/types": "^7.21.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", + "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", + "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.21.0.tgz", + "integrity": "sha512-eD/JQ21IG2i1FraJnTMbUarAUkA7G988ofehG5MDCRXaUU91rEBJuCeSoou2Sk1y4RbLYXzqEg1QLwEmRU4qcQ==", + "dependencies": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-simple-access": "^7.20.2", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/helper-validator-identifier": "^7.19.1", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.21.0", + "@babel/types": "^7.21.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", + "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", + "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", + "dependencies": { + "@babel/types": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", + "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.19.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", + "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", + "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz", + "integrity": "sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.21.0.tgz", + "integrity": "sha512-XXve0CBtOW0pd7MRzzmoyuSj0e3SEzj8pgyFxnTT1NJZL38BD1MK7yYrm8yefRPIDvNNe14xR4FdbHwpInD4rA==", + "dependencies": { + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.21.0", + "@babel/types": "^7.21.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", + "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "dependencies": { + "@babel/helper-validator-identifier": "^7.18.6", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight/node_modules/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==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/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==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/highlight/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "node_modules/@babel/highlight/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/highlight/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/parser": { + "version": "7.21.1", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.1.tgz", + "integrity": "sha512-JzhBFpkuhBNYUY7qs+wTzNmyCWUHEaAFpQQD2YfU1rPL38/L43Wvid0fFkiOCnHvsGncRZgEPyGnltABLcVDTg==", + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@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==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@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==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@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==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@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==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@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==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz", + "integrity": "sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@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==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@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==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@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==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@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==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@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==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@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==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@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==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.20.0.tgz", + "integrity": "sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.19.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/template": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", + "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", + "dependencies": { + "@babel/code-frame": "^7.18.6", + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.0.tgz", + "integrity": "sha512-Xdt2P1H4LKTO8ApPfnO1KmzYMFpp7D/EinoXzLYN/cHcBNrVCAkAtGUcXnHXrl/VGktureU6fkQrHSBE2URfoA==", + "dependencies": { + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.21.0", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.21.0", + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/parser": "^7.21.0", + "@babel/types": "^7.21.0", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.0.tgz", + "integrity": "sha512-uR7NWq2VNFnDi7EYqiRz2Jv/VQIu38tu64Zy8TX2nQFQ6etJ9V/Rr2msW8BS132mum2rL645qpDrLtAJtVpuow==", + "dependencies": { + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==" + }, + "node_modules/@cspotcode/source-map-support": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", + "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", + "dependencies": { + "@jridgewell/trace-mapping": "0.3.9" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "dependencies": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "node_modules/@ipld/dag-pb": { + "version": "2.1.18", + "resolved": "https://registry.npmjs.org/@ipld/dag-pb/-/dag-pb-2.1.18.tgz", + "integrity": "sha512-ZBnf2fuX9y3KccADURG5vb9FaOeMjFkCrNysB0PtftME/4iCTjxfaLoNq/IAh5fTqUOMXvryN6Jyka4ZGuMLIg==", + "dependencies": { + "multiformats": "^9.5.4" + } + }, + "node_modules/@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==", + "dependencies": { + "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" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.7.0.tgz", + "integrity": "sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/core": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.7.0.tgz", + "integrity": "sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==", + "dependencies": { + "@jest/console": "^29.7.0", + "@jest/reporters": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-changed-files": "^29.7.0", + "jest-config": "^29.7.0", + "jest-haste-map": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-resolve-dependencies": "^29.7.0", + "jest-runner": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "jest-watcher": "^29.7.0", + "micromatch": "^4.0.4", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/environment": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz", + "integrity": "sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==", + "dependencies": { + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-mock": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/expect": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.7.0.tgz", + "integrity": "sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==", + "dependencies": { + "expect": "^29.7.0", + "jest-snapshot": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/expect-utils": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz", + "integrity": "sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==", + "dependencies": { + "jest-get-type": "^29.6.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/fake-timers": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz", + "integrity": "sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==", + "dependencies": { + "@jest/types": "^29.6.3", + "@sinonjs/fake-timers": "^10.0.2", + "@types/node": "*", + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/globals": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.7.0.tgz", + "integrity": "sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==", + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/expect": "^29.7.0", + "@jest/types": "^29.6.3", + "jest-mock": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/reporters": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.7.0.tgz", + "integrity": "sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==", + "dependencies": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@jridgewell/trace-mapping": "^0.3.18", + "@types/node": "*", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^6.0.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.1.3", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", + "slash": "^3.0.0", + "string-length": "^4.0.1", + "strip-ansi": "^6.0.0", + "v8-to-istanbul": "^9.0.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/schemas": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", + "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", + "dependencies": { + "@sinclair/typebox": "^0.27.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/source-map": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.6.3.tgz", + "integrity": "sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==", + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.18", + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/test-result": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.7.0.tgz", + "integrity": "sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==", + "dependencies": { + "@jest/console": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/test-sequencer": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz", + "integrity": "sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==", + "dependencies": { + "@jest/test-result": "^29.7.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/transform": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz", + "integrity": "sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==", + "dependencies": { + "@babel/core": "^7.11.6", + "@jest/types": "^29.6.3", + "@jridgewell/trace-mapping": "^0.3.18", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^2.0.0", + "fast-json-stable-stringify": "^2.1.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "write-file-atomic": "^4.0.2" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/types": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", + "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==", + "dependencies": { + "@jest/schemas": "^29.6.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "dependencies": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", + "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.19", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.19.tgz", + "integrity": "sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@multiformats/murmur3": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@multiformats/murmur3/-/murmur3-1.1.3.tgz", + "integrity": "sha512-wAPLUErGR8g6Lt+bAZn6218k9YQPym+sjszsXL6o4zfxbA22P+gxWZuuD9wDbwL55xrKO5idpcuQUX7/E3oHcw==", + "dependencies": { + "multiformats": "^9.5.4", + "murmurhash3js-revisited": "^3.0.0" + } + }, + "node_modules/@protobufjs/aspromise": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz", + "integrity": "sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==" + }, + "node_modules/@protobufjs/base64": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz", + "integrity": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==" + }, + "node_modules/@protobufjs/codegen": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.4.tgz", + "integrity": "sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==" + }, + "node_modules/@protobufjs/eventemitter": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz", + "integrity": "sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q==" + }, + "node_modules/@protobufjs/fetch": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/fetch/-/fetch-1.1.0.tgz", + "integrity": "sha512-lljVXpqXebpsijW71PZaCYeIcE5on1w5DlQy5WH6GLbFryLUrBD4932W/E2BSpfRJWseIL4v/KPgBFxDOIdKpQ==", + "dependencies": { + "@protobufjs/aspromise": "^1.1.1", + "@protobufjs/inquire": "^1.1.0" + } + }, + "node_modules/@protobufjs/float": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@protobufjs/float/-/float-1.0.2.tgz", + "integrity": "sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ==" + }, + "node_modules/@protobufjs/inquire": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/inquire/-/inquire-1.1.0.tgz", + "integrity": "sha512-kdSefcPdruJiFMVSbn801t4vFK7KB/5gd2fYvrxhuJYg8ILrmn9SKSX2tZdV6V+ksulWqS7aXjBcRXl3wHoD9Q==" + }, + "node_modules/@protobufjs/path": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@protobufjs/path/-/path-1.1.2.tgz", + "integrity": "sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA==" + }, + "node_modules/@protobufjs/pool": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz", + "integrity": "sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw==" + }, + "node_modules/@protobufjs/utf8": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz", + "integrity": "sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==" + }, + "node_modules/@sinclair/typebox": { + "version": "0.27.8", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", + "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==" + }, + "node_modules/@sinonjs/commons": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-2.0.0.tgz", + "integrity": "sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg==", + "dependencies": { + "type-detect": "4.0.8" + } + }, + "node_modules/@sinonjs/fake-timers": { + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.0.2.tgz", + "integrity": "sha512-SwUDyjWnah1AaNl7kxsa7cfLhlTYoiyhDAIgyh+El30YvXs/o7OLXpYH88Zdhyx9JExKrmHDJ+10bwIcY80Jmw==", + "dependencies": { + "@sinonjs/commons": "^2.0.0" + } + }, + "node_modules/@tact-lang/compiler": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@tact-lang/compiler/-/compiler-1.1.4.tgz", + "integrity": "sha512-yrwrQBV1uDc3vl6fmKhfrGxsPkHrE7kVduennhq1cKzToftObwdyIHufKROkWtdJevBGFOqA8ZL8rkCP18zK4w==", + "dependencies": { + "@ipld/dag-pb": "2.1.18", + "@tact-lang/opcode": "^0.0.13", + "arg": "^5.0.2", + "blockstore-core": "1.0.5", + "change-case": "^4.1.2", + "ipfs-unixfs-importer": "9.0.10", + "mkdirp": "^2.1.3", + "multiformats": "9.9.0", + "ohm-js": "16.5.0", + "path-normalize": "^6.0.10", + "prando": "^6.0.1", + "qs": "^6.11.0", + "ton-core": ">=0.49.0", + "ton-crypto": "^3.2.0", + "zod": "^3.20.2" + }, + "bin": { + "tact": "bin/tact" + } + }, + "node_modules/@tact-lang/emulator": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@tact-lang/emulator/-/emulator-3.2.2.tgz", + "integrity": "sha512-v5J4hZJ2baUaziUg7MjAaTlOk1lIK9EFMZaQpRN/v9hkqByNNeB9G9pT9/7SrjTgdnUqNxDFjoxjPILSq6p59g==", + "dependencies": { + "prando": "^6.0.1", + "teslabot": "^1.5.0", + "zod": "^3.20.2" + }, + "peerDependencies": { + "ton-core": ">=0.47.0", + "ton-crypto": "^3.2.0" + } + }, + "node_modules/@tact-lang/opcode": { + "version": "0.0.13", + "resolved": "https://registry.npmjs.org/@tact-lang/opcode/-/opcode-0.0.13.tgz", + "integrity": "sha512-4FGp1p3ahVrXr2QbyD2FqmnvXTMYapTlRJSPhj4O1L2yIq7dp0CkFL9EdKOCUfyirT0X5en78PHLfj0CuQGD7A==", + "peerDependencies": { + "ton-core": ">=0.49.0", + "ton-crypto": "^3.2.0" + } + }, + "node_modules/@ton-community/sandbox": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@ton-community/sandbox/-/sandbox-0.11.0.tgz", + "integrity": "sha512-3tlSprRBTSu9m0tJTC3cl4MXQep1vfNMPqk9+JAXSRJu9ToEvIUVpqO6MQNkbz9LkKDuOEBs5vyqT37DlKKcWw==", + "peerDependencies": { + "ton-core": ">=0.48.0", + "ton-crypto": ">=3.2.0" + } + }, + "node_modules/@ton-community/test-utils": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@ton-community/test-utils/-/test-utils-0.3.0.tgz", + "integrity": "sha512-eCw1c6a0TcKwiYEA4fmzPq+7dJtUx0UFYu+UEoRznIxEOcpEb8Ssjb9yMeiJEzbtUVMCkhEtpztdKt75ngDRWg==", + "dependencies": { + "node-inspect-extracted": "^2.0.0" + }, + "peerDependencies": { + "@jest/globals": "*", + "chai": "*", + "ton-core": ">=0.36.1" + }, + "peerDependenciesMeta": { + "@jest/globals": { + "optional": true + }, + "chai": { + "optional": true + } + } + }, + "node_modules/@tsconfig/node10": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", + "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==" + }, + "node_modules/@tsconfig/node12": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", + "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==" + }, + "node_modules/@tsconfig/node14": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", + "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==" + }, + "node_modules/@tsconfig/node16": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.3.tgz", + "integrity": "sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==" + }, + "node_modules/@types/babel__core": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.0.tgz", + "integrity": "sha512-+n8dL/9GWblDO0iU6eZAwEIJVr5DWigtle+Q6HLOrh/pdbXOhOtqzq8VPPE2zvNJzSKY4vH/z3iT3tn0A3ypiQ==", + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@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==", + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@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==", + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.18.3.tgz", + "integrity": "sha512-1kbcJ40lLB7MHsj39U4Sh1uTd2E7rLEa79kmDpI6cy+XiXsteB3POdQomoq4FxszMrO3ZYchkhYJw7A2862b3w==", + "dependencies": { + "@babel/types": "^7.3.0" + } + }, + "node_modules/@types/graceful-fs": { + "version": "4.1.6", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.6.tgz", + "integrity": "sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@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==" + }, + "node_modules/@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==", + "dependencies": { + "@types/istanbul-lib-coverage": "*" + } + }, + "node_modules/@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==", + "dependencies": { + "@types/istanbul-lib-report": "*" + } + }, + "node_modules/@types/jest": { + "version": "29.5.5", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.5.tgz", + "integrity": "sha512-ebylz2hnsWR9mYvmBFbXJXr+33UPc4+ZdxyDXh5w0FlPBTfCVN3wPL+kuOiQt3xvrK419v7XWeAs+AeOksafXg==", + "dependencies": { + "expect": "^29.0.0", + "pretty-format": "^29.0.0" + } + }, + "node_modules/@types/long": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.2.tgz", + "integrity": "sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA==" + }, + "node_modules/@types/node": { + "version": "20.8.6", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.8.6.tgz", + "integrity": "sha512-eWO4K2Ji70QzKUqRy6oyJWUeB7+g2cRagT3T/nxYibYcT4y2BDL8lqolRXjTHmkZCdJfIPaY73KbJAZmcryxTQ==", + "dependencies": { + "undici-types": "~5.25.1" + } + }, + "node_modules/@types/qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==" + }, + "node_modules/@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==" + }, + "node_modules/@types/yargs": { + "version": "17.0.22", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.22.tgz", + "integrity": "sha512-pet5WJ9U8yPVRhkwuEIp5ktAeAqRZOq4UdAyWLWzxbtpyXnzbtLdKiXAjJzi/KLmPGS9wk86lUFWZFN6sISo4g==", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@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==" + }, + "node_modules/acorn": { + "version": "8.8.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", + "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-walk": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", + "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/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==", + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/arg": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==" + }, + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/axios": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.25.0.tgz", + "integrity": "sha512-cD8FOb0tRH3uuEe6+evtAbgJtfxr7ly3fQjYcMcuPlgkwVS9xboaVIpcDV+cYQe+yGykgwZCs1pzjntcGa6l5g==", + "dependencies": { + "follow-redirects": "^1.14.7" + } + }, + "node_modules/babel-jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz", + "integrity": "sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==", + "dependencies": { + "@jest/transform": "^29.7.0", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^29.6.3", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.8.0" + } + }, + "node_modules/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==", + "dependencies": { + "@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" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-istanbul/node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "dependencies": { + "@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" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-jest-hoist": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz", + "integrity": "sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==", + "dependencies": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.1.14", + "@types/babel__traverse": "^7.0.6" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/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==", + "dependencies": { + "@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" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/babel-preset-jest": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz", + "integrity": "sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==", + "dependencies": { + "babel-plugin-jest-hoist": "^29.6.3", + "babel-preset-current-node-syntax": "^1.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/base64url": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/base64url/-/base64url-3.0.1.tgz", + "integrity": "sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/bl": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-5.1.0.tgz", + "integrity": "sha512-tv1ZJHLfTDnXE6tMHv73YgSJaWR2AFuPwMntBe7XL/GBFHnT0CLnsHMogfk5+GzCDC5ZWarSCYaIGATZt9dNsQ==", + "dependencies": { + "buffer": "^6.0.3", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/blockstore-core": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/blockstore-core/-/blockstore-core-1.0.5.tgz", + "integrity": "sha512-i/9CUMMvBALVbtSqUIuiWB3tk//a4Q2I2CEWiBuYNnhJvk/DWplXjLt8Sqc5VGkRVXVPSsEuH8fUtqJt5UFYcA==", + "dependencies": { + "err-code": "^3.0.1", + "interface-blockstore": "^2.0.2", + "interface-store": "^2.0.1", + "it-all": "^1.0.4", + "it-drain": "^1.0.4", + "it-filter": "^1.0.2", + "it-take": "^1.0.1", + "multiformats": "^9.4.7" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.21.5", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz", + "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001449", + "electron-to-chromium": "^1.4.284", + "node-releases": "^2.0.8", + "update-browserslist-db": "^1.0.10" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/bs-logger": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz", + "integrity": "sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==", + "dependencies": { + "fast-json-stable-stringify": "2.x" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/bser": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", + "dependencies": { + "node-int64": "^0.4.0" + } + }, + "node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "node_modules/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==" + }, + "node_modules/call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/camel-case": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", + "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", + "dependencies": { + "pascal-case": "^3.1.2", + "tslib": "^2.0.3" + } + }, + "node_modules/camel-case/node_modules/tslib": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", + "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==" + }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001457", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001457.tgz", + "integrity": "sha512-SDIV6bgE1aVbK6XyxdURbUE89zY7+k1BBBaOwYwkNCglXlel/E7mELiHC64HQ+W0xSKlqWhV9Wh7iHxUjMs4fA==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + } + ] + }, + "node_modules/capital-case": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/capital-case/-/capital-case-1.0.4.tgz", + "integrity": "sha512-ds37W8CytHgwnhGGTi88pcPyR15qoNkOpYwmMMfnWqqWgESapLqvDx6huFjQ5vqWSn2Z06173XNA7LtMOeUh1A==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3", + "upper-case-first": "^2.0.2" + } + }, + "node_modules/capital-case/node_modules/tslib": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", + "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==" + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/change-case": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/change-case/-/change-case-4.1.2.tgz", + "integrity": "sha512-bSxY2ws9OtviILG1EiY5K7NNxkqg/JnRnFxLtKQ96JaviiIxi7djMrSd0ECT9AC+lttClmYwKw53BWpOMblo7A==", + "dependencies": { + "camel-case": "^4.1.2", + "capital-case": "^1.0.4", + "constant-case": "^3.0.4", + "dot-case": "^3.0.4", + "header-case": "^2.0.4", + "no-case": "^3.0.4", + "param-case": "^3.0.4", + "pascal-case": "^3.1.2", + "path-case": "^3.0.4", + "sentence-case": "^3.0.4", + "snake-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/change-case/node_modules/tslib": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", + "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==" + }, + "node_modules/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==", + "engines": { + "node": ">=10" + } + }, + "node_modules/ci-info": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.8.0.tgz", + "integrity": "sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "engines": { + "node": ">=8" + } + }, + "node_modules/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==" + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } + }, + "node_modules/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==" + }, + "node_modules/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==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/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==" + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + }, + "node_modules/constant-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/constant-case/-/constant-case-3.0.4.tgz", + "integrity": "sha512-I2hSBi7Vvs7BEuJDr5dDHfzb/Ruj3FyvFyh7KLilAjNQw3Be+xgqUBA2W6scVEcL0hL1dwPRtIqEPVUCKkSsyQ==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3", + "upper-case": "^2.0.2" + } + }, + "node_modules/constant-case/node_modules/tslib": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", + "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==" + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==" + }, + "node_modules/create-jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz", + "integrity": "sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==", + "dependencies": { + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "prompts": "^2.0.1" + }, + "bin": { + "create-jest": "bin/create-jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==" + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/dataloader": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/dataloader/-/dataloader-2.2.2.tgz", + "integrity": "sha512-8YnDaaf7N3k/q5HnTJVuzSyLETjoZjVmHc4AeKAzOvKHEFQKcn64OKBfzHYtE9zGjctNM7V9I0MfnUVLpi7M5g==" + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/dedent": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.5.1.tgz", + "integrity": "sha512-+LxW+KLWxu3HW3M2w2ympwtqPrqYRzU8fqi6Fhd18fBALe15blJPI/I4+UHveMVG6lJqB4JNd4UG0S5cnVHwIg==", + "peerDependencies": { + "babel-plugin-macros": "^3.1.0" + }, + "peerDependenciesMeta": { + "babel-plugin-macros": { + "optional": true + } + } + }, + "node_modules/deepmerge": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.0.tgz", + "integrity": "sha512-z2wJZXrmeHdvYJp/Ux55wIjqo81G5Bp4c+oELTW+7ar6SogWHajt5a9gO3s3IDaGSAXjDk0vlQKN3rms8ab3og==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "engines": { + "node": ">=8" + } + }, + "node_modules/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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/diff-sequences": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz", + "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==", + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/dot-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", + "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/dot-case/node_modules/tslib": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", + "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==" + }, + "node_modules/dotenv": { + "version": "16.3.1", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.3.1.tgz", + "integrity": "sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/motdotla/dotenv?sponsor=1" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.4.305", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.305.tgz", + "integrity": "sha512-WETy6tG0CT5gm1O+xCbyapWNsCcmIvrn4NHViIGYo2AT8FV2qUCXdaB+WqYxSv/vS5mFqhBYnfZAAkVArjBmUg==" + }, + "node_modules/emittery": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", + "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" + } + }, + "node_modules/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==" + }, + "node_modules/enquirer": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", + "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", + "dependencies": { + "ansi-colors": "^4.1.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/err-code": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-3.0.1.tgz", + "integrity": "sha512-GiaH0KJUewYok+eeY05IIgjtAe4Yltygk9Wqp1V5yVWLdhf0hYZchRjNIT9bb0mSwRcIusT3cx7PJUf3zEIfUA==" + }, + "node_modules/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==", + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dependencies": { + "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" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/expect": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-29.7.0.tgz", + "integrity": "sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==", + "dependencies": { + "@jest/expect-utils": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/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==" + }, + "node_modules/fb-watchman": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", + "dependencies": { + "bser": "2.1.1" + } + }, + "node_modules/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==", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/follow-redirects": { + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", + "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + }, + "node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "node_modules/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==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/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==", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz", + "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==", + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/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==", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/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==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" + }, + "node_modules/hamt-sharding": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/hamt-sharding/-/hamt-sharding-2.0.1.tgz", + "integrity": "sha512-vnjrmdXG9dDs1m/H4iJ6z0JFI2NtgsW5keRkTcM85NGak69Mkf5PHUqBz+Xs0T4sg0ppvj9O5EGAJo40FTxmmA==", + "dependencies": { + "sparse-array": "^1.3.1", + "uint8arrays": "^3.0.0" + }, + "engines": { + "node": ">=10.0.0", + "npm": ">=6.0.0" + } + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/header-case": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/header-case/-/header-case-2.0.4.tgz", + "integrity": "sha512-H/vuk5TEEVZwrR0lp2zed9OCo1uAILMlx0JEMgC26rzyJJ3N1v6XkwHHXJQdR2doSjcGPM6OKPYoJgf0plJ11Q==", + "dependencies": { + "capital-case": "^1.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/header-case/node_modules/tslib": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", + "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==" + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==" + }, + "node_modules/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==", + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/import-local": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", + "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", + "dependencies": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/interface-blockstore": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/interface-blockstore/-/interface-blockstore-2.0.3.tgz", + "integrity": "sha512-OwVUnlNcx7H5HloK0Myv6c/C1q9cNG11HX6afdeU6q6kbuNj8jKCwVnmJHhC94LZaJ+9hvVOk4IUstb3Esg81w==", + "dependencies": { + "interface-store": "^2.0.2", + "multiformats": "^9.0.4" + } + }, + "node_modules/interface-store": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/interface-store/-/interface-store-2.0.2.tgz", + "integrity": "sha512-rScRlhDcz6k199EkHqT8NpM87ebN89ICOzILoBHgaG36/WX50N32BnU/kpZgCGPLhARRAWUUX5/cyaIjt7Kipg==" + }, + "node_modules/ipfs-unixfs": { + "version": "6.0.9", + "resolved": "https://registry.npmjs.org/ipfs-unixfs/-/ipfs-unixfs-6.0.9.tgz", + "integrity": "sha512-0DQ7p0/9dRB6XCb0mVCTli33GzIzSVx5udpJuVM47tGcD+W+Bl4LsnoLswd3ggNnNEakMv1FdoFITiEnchXDqQ==", + "dependencies": { + "err-code": "^3.0.1", + "protobufjs": "^6.10.2" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/ipfs-unixfs-importer": { + "version": "9.0.10", + "resolved": "https://registry.npmjs.org/ipfs-unixfs-importer/-/ipfs-unixfs-importer-9.0.10.tgz", + "integrity": "sha512-W+tQTVcSmXtFh7FWYWwPBGXJ1xDgREbIyI1E5JzDcimZLIyT5gGMfxR3oKPxxWj+GKMpP5ilvMQrbsPzWcm3Fw==", + "dependencies": { + "@ipld/dag-pb": "^2.0.2", + "@multiformats/murmur3": "^1.0.3", + "bl": "^5.0.0", + "err-code": "^3.0.1", + "hamt-sharding": "^2.0.0", + "interface-blockstore": "^2.0.3", + "ipfs-unixfs": "^6.0.0", + "it-all": "^1.0.5", + "it-batch": "^1.0.8", + "it-first": "^1.0.6", + "it-parallel-batch": "^1.0.9", + "merge-options": "^3.0.4", + "multiformats": "^9.4.2", + "rabin-wasm": "^0.1.4", + "uint8arrays": "^3.0.0" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" + }, + "node_modules/is-core-module": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", + "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/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==", + "engines": { + "node": ">=6" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-plain-obj": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", + "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + }, + "node_modules/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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.1.tgz", + "integrity": "sha512-EAMEJBsYuyyztxMxW3g7ugGPkrZsV57v0Hmv3mm1uQsmB+QnZuepg731CRaIgeUVSdmsTngOkSnauNF8p7FIhA==", + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^7.5.4" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-instrument/node_modules/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==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-instrument/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/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==", + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^3.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/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==", + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-reports": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz", + "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==", + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/it-all": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/it-all/-/it-all-1.0.6.tgz", + "integrity": "sha512-3cmCc6Heqe3uWi3CVM/k51fa/XbMFpQVzFoDsV0IZNHSQDyAXl3c4MjHkFX5kF3922OGj7Myv1nSEUgRtcuM1A==" + }, + "node_modules/it-batch": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/it-batch/-/it-batch-1.0.9.tgz", + "integrity": "sha512-7Q7HXewMhNFltTsAMdSz6luNhyhkhEtGGbYek/8Xb/GiqYMtwUmopE1ocPSiJKKp3rM4Dt045sNFoUu+KZGNyA==" + }, + "node_modules/it-drain": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/it-drain/-/it-drain-1.0.5.tgz", + "integrity": "sha512-r/GjkiW1bZswC04TNmUnLxa6uovme7KKwPhc+cb1hHU65E3AByypHH6Pm91WHuvqfFsm+9ws0kPtDBV3/8vmIg==" + }, + "node_modules/it-filter": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/it-filter/-/it-filter-1.0.3.tgz", + "integrity": "sha512-EI3HpzUrKjTH01miLHWmhNWy3Xpbx4OXMXltgrNprL5lDpF3giVpHIouFpr5l+evXw6aOfxhnt01BIB+4VQA+w==" + }, + "node_modules/it-first": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/it-first/-/it-first-1.0.7.tgz", + "integrity": "sha512-nvJKZoBpZD/6Rtde6FXqwDqDZGF1sCADmr2Zoc0hZsIvnE449gRFnGctxDf09Bzc/FWnHXAdaHVIetY6lrE0/g==" + }, + "node_modules/it-parallel-batch": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/it-parallel-batch/-/it-parallel-batch-1.0.11.tgz", + "integrity": "sha512-UWsWHv/kqBpMRmyZJzlmZeoAMA0F3SZr08FBdbhtbe+MtoEBgr/ZUAKrnenhXCBrsopy76QjRH2K/V8kNdupbQ==", + "dependencies": { + "it-batch": "^1.0.9" + } + }, + "node_modules/it-take": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/it-take/-/it-take-1.0.2.tgz", + "integrity": "sha512-u7I6qhhxH7pSevcYNaMECtkvZW365ARqAIt9K+xjdK1B2WUDEjQSfETkOCT8bxFq/59LqrN3cMLUtTgmDBaygw==" + }, + "node_modules/jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz", + "integrity": "sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==", + "dependencies": { + "@jest/core": "^29.7.0", + "@jest/types": "^29.6.3", + "import-local": "^3.0.2", + "jest-cli": "^29.7.0" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-changed-files": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.7.0.tgz", + "integrity": "sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==", + "dependencies": { + "execa": "^5.0.0", + "jest-util": "^29.7.0", + "p-limit": "^3.1.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-circus": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.7.0.tgz", + "integrity": "sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==", + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/expect": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^1.0.0", + "is-generator-fn": "^2.0.0", + "jest-each": "^29.7.0", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "p-limit": "^3.1.0", + "pretty-format": "^29.7.0", + "pure-rand": "^6.0.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-cli": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.7.0.tgz", + "integrity": "sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==", + "dependencies": { + "@jest/core": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "create-jest": "^29.7.0", + "exit": "^0.1.2", + "import-local": "^3.0.2", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "yargs": "^17.3.1" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-config": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.7.0.tgz", + "integrity": "sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==", + "dependencies": { + "@babel/core": "^7.11.6", + "@jest/test-sequencer": "^29.7.0", + "@jest/types": "^29.6.3", + "babel-jest": "^29.7.0", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-circus": "^29.7.0", + "jest-environment-node": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-runner": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@types/node": "*", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "ts-node": { + "optional": true + } + } + }, + "node_modules/jest-diff": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz", + "integrity": "sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==", + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^29.6.3", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-docblock": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz", + "integrity": "sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==", + "dependencies": { + "detect-newline": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-each": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.7.0.tgz", + "integrity": "sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==", + "dependencies": { + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "jest-get-type": "^29.6.3", + "jest-util": "^29.7.0", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-environment-node": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz", + "integrity": "sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==", + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-get-type": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz", + "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==", + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-haste-map": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz", + "integrity": "sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/graceful-fs": "^4.1.3", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", + "micromatch": "^4.0.4", + "walker": "^1.0.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" + } + }, + "node_modules/jest-leak-detector": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz", + "integrity": "sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==", + "dependencies": { + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-matcher-utils": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz", + "integrity": "sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==", + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^29.7.0", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-message-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz", + "integrity": "sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==", + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^29.6.3", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-mock": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz", + "integrity": "sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } + } + }, + "node_modules/jest-regex-util": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz", + "integrity": "sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==", + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-resolve": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz", + "integrity": "sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==", + "dependencies": { + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "resolve": "^1.20.0", + "resolve.exports": "^2.0.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-resolve-dependencies": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz", + "integrity": "sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==", + "dependencies": { + "jest-regex-util": "^29.6.3", + "jest-snapshot": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-runner": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.7.0.tgz", + "integrity": "sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==", + "dependencies": { + "@jest/console": "^29.7.0", + "@jest/environment": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "graceful-fs": "^4.2.9", + "jest-docblock": "^29.7.0", + "jest-environment-node": "^29.7.0", + "jest-haste-map": "^29.7.0", + "jest-leak-detector": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-resolve": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-util": "^29.7.0", + "jest-watcher": "^29.7.0", + "jest-worker": "^29.7.0", + "p-limit": "^3.1.0", + "source-map-support": "0.5.13" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-runtime": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.7.0.tgz", + "integrity": "sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==", + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/globals": "^29.7.0", + "@jest/source-map": "^29.6.3", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-snapshot": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.7.0.tgz", + "integrity": "sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==", + "dependencies": { + "@babel/core": "^7.11.6", + "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-jsx": "^7.7.2", + "@babel/plugin-syntax-typescript": "^7.7.2", + "@babel/types": "^7.3.3", + "@jest/expect-utils": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "babel-preset-current-node-syntax": "^1.0.0", + "chalk": "^4.0.0", + "expect": "^29.7.0", + "graceful-fs": "^4.2.9", + "jest-diff": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "natural-compare": "^1.4.0", + "pretty-format": "^29.7.0", + "semver": "^7.5.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/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==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-snapshot/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-snapshot/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/jest-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz", + "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-validate": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz", + "integrity": "sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==", + "dependencies": { + "@jest/types": "^29.6.3", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^29.6.3", + "leven": "^3.1.0", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-validate/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-watcher": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz", + "integrity": "sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==", + "dependencies": { + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "jest-util": "^29.7.0", + "string-length": "^4.0.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-worker": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz", + "integrity": "sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==", + "dependencies": { + "@types/node": "*", + "jest-util": "^29.7.0", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "node_modules/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==", + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/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==" + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jssha": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/jssha/-/jssha-3.2.0.tgz", + "integrity": "sha512-QuruyBENDWdN4tZwJbQq7/eAK85FqrI4oDbXjy5IBhYD+2pTJyBUWZe8ctWaCkrV0gy6AaelgOZZBMeswEa/6Q==", + "engines": { + "node": "*" + } + }, + "node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "engines": { + "node": ">=6" + } + }, + "node_modules/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==", + "engines": { + "node": ">=6" + } + }, + "node_modules/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==" + }, + "node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==" + }, + "node_modules/long": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", + "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==" + }, + "node_modules/lower-case": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", + "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", + "dependencies": { + "tslib": "^2.0.3" + } + }, + "node_modules/lower-case/node_modules/tslib": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", + "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==" + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/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==", + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==" + }, + "node_modules/makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "dependencies": { + "tmpl": "1.0.5" + } + }, + "node_modules/merge-options": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/merge-options/-/merge-options-3.0.4.tgz", + "integrity": "sha512-2Sug1+knBjkaMsMgf1ctR1Ujx+Ayku4EdJN4Z+C2+JzoeF7A3OZ9KM2GY0CpQS51NR61LTurMJrRKPhSs3ZRTQ==", + "dependencies": { + "is-plain-obj": "^2.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/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==" + }, + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/mkdirp": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-2.1.3.tgz", + "integrity": "sha512-sjAkg21peAG9HS+Dkx7hlG9Ztx7HLeKnvB3NQRcu/mltCVmvkF0pisbiTSfDVYTT86XEfZrTUosLdZLStquZUw==", + "bin": { + "mkdirp": "dist/cjs/src/bin.js" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/multiformats": { + "version": "9.9.0", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", + "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==" + }, + "node_modules/murmurhash3js-revisited": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/murmurhash3js-revisited/-/murmurhash3js-revisited-3.0.0.tgz", + "integrity": "sha512-/sF3ee6zvScXMb1XFJ8gDsSnY+X8PbOyjIuBhtgis10W2Jx4ZjIhikUCIF9c4gpJxVnQIsPAFrSwTCuAjicP6g==", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==" + }, + "node_modules/no-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", + "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", + "dependencies": { + "lower-case": "^2.0.2", + "tslib": "^2.0.3" + } + }, + "node_modules/no-case/node_modules/tslib": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", + "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==" + }, + "node_modules/node-fetch": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.9.tgz", + "integrity": "sha512-DJm/CJkZkRjKKj4Zi4BsKVZh3ValV5IR5s7LVZnW+6YMh0W1BfNA8XSs6DLMGYlId5F3KnA70uu2qepcR08Qqg==", + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, + "node_modules/node-inspect-extracted": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/node-inspect-extracted/-/node-inspect-extracted-2.0.2.tgz", + "integrity": "sha512-8qm9+tu/GmbA/uWQRs6ad8KstyhH94a0pXpRVGHaJ9wHlJbetCYoCwXbKILaaMcE+wgbgpOpzcCnipkL8vTqxA==", + "engines": { + "node": ">=14" + } + }, + "node_modules/node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==" + }, + "node_modules/node-releases": { + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz", + "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==" + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/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==", + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/object-inspect": { + "version": "1.12.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", + "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ohm-js": { + "version": "16.5.0", + "resolved": "https://registry.npmjs.org/ohm-js/-/ohm-js-16.5.0.tgz", + "integrity": "sha512-OXuB3g1cdP6vCyaGziLmihLkBrtfH9H9jmYp5nRqad093KVzkUSi062IVv5l+3SB/HIbMyDvBqhgR3Q3S+EEnw==", + "engines": { + "node": ">=0.12.1" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/open": { + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", + "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", + "dependencies": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/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==", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-locate/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/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==", + "engines": { + "node": ">=6" + } + }, + "node_modules/param-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", + "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/param-case/node_modules/tslib": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", + "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==" + }, + "node_modules/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==", + "dependencies": { + "@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" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pascal-case": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", + "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/pascal-case/node_modules/tslib": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", + "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==" + }, + "node_modules/path-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/path-case/-/path-case-3.0.4.tgz", + "integrity": "sha512-qO4qCFjXqVTrcbPt/hQfhTQ+VhFsqNKOPtytgNKkKxSoEp3XPUQ8ObFuePylOIok5gjn69ry8XiULxCwot3Wfg==", + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/path-case/node_modules/tslib": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", + "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==" + }, + "node_modules/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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-normalize": { + "version": "6.0.10", + "resolved": "https://registry.npmjs.org/path-normalize/-/path-normalize-6.0.10.tgz", + "integrity": "sha512-ZlQRW8CAmppOuQB6+dVvkmzk4wGZRDtUmHeV+/596Bm+TYcuiAGV8EACc6hhRw4j3rdv5PimDOshXCqerHAtEA==", + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/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==" + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pirates": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz", + "integrity": "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/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==", + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/prando": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/prando/-/prando-6.0.1.tgz", + "integrity": "sha512-ghUWxQ1T9IJmPu6eshc3VU0OwveUtXQ33ZLXYUcz1Oc5ppKLDXKp0TBDj6b0epwhEctzcQSNGR2iHyvQSn4W5A==" + }, + "node_modules/prettier": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", + "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", + "bin": { + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, + "node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/pretty-format/node_modules/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==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/protobufjs": { + "version": "6.11.3", + "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.3.tgz", + "integrity": "sha512-xL96WDdCZYdU7Slin569tFX712BxsxslWwAfAhCYjQKGTq7dAU91Lomy6nLLhh/dyGhk/YH4TwTSRxTzhuHyZg==", + "hasInstallScript": true, + "dependencies": { + "@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" + }, + "bin": { + "pbjs": "bin/pbjs", + "pbts": "bin/pbts" + } + }, + "node_modules/pure-rand": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.0.4.tgz", + "integrity": "sha512-LA0Y9kxMYv47GIPJy6MI84fqTd2HmYZI83W/kM/SkKfDlajnZYfmXFTxkbY+xSBPkLJxltMa9hIkmdc29eguMA==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/dubzzz" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fast-check" + } + ] + }, + "node_modules/qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/rabin-wasm": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/rabin-wasm/-/rabin-wasm-0.1.5.tgz", + "integrity": "sha512-uWgQTo7pim1Rnj5TuWcCewRDTf0PEFTSlaUjWP4eY9EbLV9em08v89oCz/WO+wRxpYuO36XEHp4wgYQnAgOHzA==", + "dependencies": { + "@assemblyscript/loader": "^0.9.4", + "bl": "^5.0.0", + "debug": "^4.3.1", + "minimist": "^1.2.5", + "node-fetch": "^2.6.1", + "readable-stream": "^3.6.0" + }, + "bin": { + "rabin-wasm": "cli/bin.js" + } + }, + "node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" + }, + "node_modules/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==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "dependencies": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/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==", + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve.exports": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.0.tgz", + "integrity": "sha512-6K/gDlqgQscOlg9fSRpWstA8sYe8rbELsSTNpx+3kTrsVCzvSl0zIvRErM7fdl9ERWDsKnrLnwB+Ne89918XOg==", + "engines": { + "node": ">=10" + } + }, + "node_modules/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==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/sentence-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/sentence-case/-/sentence-case-3.0.4.tgz", + "integrity": "sha512-8LS0JInaQMCRoQ7YUytAo/xUu5W2XnQxV2HI/6uM6U7CITS1RqPElr30V6uIqyMKM9lJGRVFy5/4CuzcixNYSg==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3", + "upper-case-first": "^2.0.2" + } + }, + "node_modules/sentence-case/node_modules/tslib": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", + "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==" + }, + "node_modules/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==", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "engines": { + "node": ">=8" + } + }, + "node_modules/side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/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==" + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==" + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/snake-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/snake-case/-/snake-case-3.0.4.tgz", + "integrity": "sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==", + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/snake-case/node_modules/tslib": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", + "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==" + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.13", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", + "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/sparse-array": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/sparse-array/-/sparse-array-1.3.2.tgz", + "integrity": "sha512-ZT711fePGn3+kQyLuv1fpd3rNSkNF8vd5Kv2D+qnOANeyKs3fx6bUMGWRPvgTTcYV64QMqZKZwcuaQSP3AZ0tg==" + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==" + }, + "node_modules/stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/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==", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-length": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", + "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", + "dependencies": { + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/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==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/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==", + "engines": { + "node": ">=6" + } + }, + "node_modules/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==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/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==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/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==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/symbol.inspect": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/symbol.inspect/-/symbol.inspect-1.0.1.tgz", + "integrity": "sha512-YQSL4duoHmLhsTD1Pw8RW6TZ5MaTX5rXJnqacJottr2P2LZBF/Yvrc3ku4NUpMOm8aM0KOCqM+UAkMA5HWQCzQ==" + }, + "node_modules/teslabot": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/teslabot/-/teslabot-1.5.0.tgz", + "integrity": "sha512-e2MmELhCgrgZEGo7PQu/6bmYG36IDH+YrBI1iGm6jovXkeDIGa3pZ2WSqRjzkuw2vt1EqfkZoV5GpXgqL8QJVg==" + }, + "node_modules/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==", + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tmpl": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==" + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "engines": { + "node": ">=4" + } + }, + "node_modules/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==", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/ton": { + "version": "13.6.1", + "resolved": "https://registry.npmjs.org/ton/-/ton-13.6.1.tgz", + "integrity": "sha512-CZlFsmO+l+uPSI2zgnUd8zCS5XuWnUSFRVUjRGl5X5fKXYnjaVba4vMaIyFTJwel+uEMnolGMSlNP8DAa9mfVg==", + "dependencies": { + "axios": "^0.25.0", + "dataloader": "^2.0.0", + "symbol.inspect": "1.0.1", + "teslabot": "^1.3.0", + "zod": "^3.21.4" + }, + "peerDependencies": { + "ton-core": ">=0.51.0", + "ton-crypto": ">=3.2.0" + } + }, + "node_modules/ton-core": { + "version": "0.51.0", + "resolved": "https://registry.npmjs.org/ton-core/-/ton-core-0.51.0.tgz", + "integrity": "sha512-FgejId/X1o7nNc5g8DBW1+9piwFolVU3e83Z8TudDCALik29YPhGOqLHSvcVYux3QV7SL0qCNaKgA3mV2nNfCA==", + "dependencies": { + "symbol.inspect": "1.0.1" + }, + "peerDependencies": { + "ton-crypto": ">=3.2.0" + } + }, + "node_modules/ton-crypto": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ton-crypto/-/ton-crypto-3.2.0.tgz", + "integrity": "sha512-fltdBNQ45gARMuGMEOjPZWPJ5eSql8p3CA0Dj7tPv5lhU5ziT8SxXLAzDraR9HJ8YpjBHLVvYyhMLRiEwxgtMQ==", + "dependencies": { + "jssha": "3.2.0", + "ton-crypto-primitives": "2.0.0", + "tweetnacl": "1.0.3" + } + }, + "node_modules/ton-crypto-primitives": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ton-crypto-primitives/-/ton-crypto-primitives-2.0.0.tgz", + "integrity": "sha512-K+qKjpS0h9sPW6oExcpxnzuQ7nEgHEiDKwIqE/jWD25o8iFGe3FWj1gKxFNbKE9wwYKc5IV8FwrU+raF0KO5nQ==", + "dependencies": { + "jssha": "3.2.0" + } + }, + "node_modules/ton-emulator": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ton-emulator/-/ton-emulator-2.1.1.tgz", + "integrity": "sha512-/k0tB7VPQhJEn2KUwcYlIsLrUgRLnxMGvTSsYk3zsKLbc2HR0d/K7azzmxq9BqBpKPeopL27J1IYNqpSLqMvdA==", + "dependencies": { + "prando": "^6.0.1", + "teslabot": "^1.5.0", + "zod": "^3.20.2" + }, + "peerDependencies": { + "ton-core": ">=0.47.0", + "ton-crypto": "^3.2.0" + } + }, + "node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + }, + "node_modules/ts-jest": { + "version": "29.1.1", + "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.1.1.tgz", + "integrity": "sha512-D6xjnnbP17cC85nliwGiL+tpoKN0StpgE0TeOjXQTU6MVCfsB4v7aW05CgQ/1OywGb0x/oy9hHFnN+sczTiRaA==", + "dependencies": { + "bs-logger": "0.x", + "fast-json-stable-stringify": "2.x", + "jest-util": "^29.0.0", + "json5": "^2.2.3", + "lodash.memoize": "4.x", + "make-error": "1.x", + "semver": "^7.5.3", + "yargs-parser": "^21.0.1" + }, + "bin": { + "ts-jest": "cli.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": ">=7.0.0-beta.0 <8", + "@jest/types": "^29.0.0", + "babel-jest": "^29.0.0", + "jest": "^29.0.0", + "typescript": ">=4.3 <6" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "@jest/types": { + "optional": true + }, + "babel-jest": { + "optional": true + }, + "esbuild": { + "optional": true + } + } + }, + "node_modules/ts-jest/node_modules/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==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ts-jest/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ts-jest/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/ts-node": { + "version": "10.9.1", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", + "integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==", + "dependencies": { + "@cspotcode/source-map-support": "^0.8.0", + "@tsconfig/node10": "^1.0.7", + "@tsconfig/node12": "^1.0.7", + "@tsconfig/node14": "^1.0.0", + "@tsconfig/node16": "^1.0.2", + "acorn": "^8.4.1", + "acorn-walk": "^8.1.1", + "arg": "^4.1.0", + "create-require": "^1.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "v8-compile-cache-lib": "^3.0.1", + "yn": "3.1.1" + }, + "bin": { + "ts-node": "dist/bin.js", + "ts-node-cwd": "dist/bin-cwd.js", + "ts-node-esm": "dist/bin-esm.js", + "ts-node-script": "dist/bin-script.js", + "ts-node-transpile-only": "dist/bin-transpile.js", + "ts-script": "dist/bin-script-deprecated.js" + }, + "peerDependencies": { + "@swc/core": ">=1.2.50", + "@swc/wasm": ">=1.2.50", + "@types/node": "*", + "typescript": ">=2.7" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "@swc/wasm": { + "optional": true + } + } + }, + "node_modules/ts-node/node_modules/arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==" + }, + "node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/tweetnacl": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz", + "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==" + }, + "node_modules/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==", + "engines": { + "node": ">=4" + } + }, + "node_modules/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==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typescript": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.2.2.tgz", + "integrity": "sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/uint8arrays": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-3.1.1.tgz", + "integrity": "sha512-+QJa8QRnbdXVpHYjLoTpJIdCTiw9Ir62nocClWuXIq2JIh4Uta0cQsTSpFL678p2CN8B+XSApwcU+pQEqVpKWg==", + "dependencies": { + "multiformats": "^9.4.2" + } + }, + "node_modules/undici-types": { + "version": "5.25.3", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.25.3.tgz", + "integrity": "sha512-Ga1jfYwRn7+cP9v8auvEXN1rX3sWqlayd4HP7OKk4mZWylEmu3KzXDUGrQUN6Ol7qo1gPvB2e5gX6udnyEPgdA==" + }, + "node_modules/update-browserslist-db": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", + "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + ], + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "browserslist-lint": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/upper-case": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/upper-case/-/upper-case-2.0.2.tgz", + "integrity": "sha512-KgdgDGJt2TpuwBUIjgG6lzw2GWFRCW9Qkfkiv0DxqHHLYJHmtmdUIKcZd8rHgFSjopVTlw6ggzCm1b8MFQwikg==", + "dependencies": { + "tslib": "^2.0.3" + } + }, + "node_modules/upper-case-first": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/upper-case-first/-/upper-case-first-2.0.2.tgz", + "integrity": "sha512-514ppYHBaKwfJRK/pNC6c/OxfGa0obSnAl106u97Ed0I625Nin96KAjttZF6ZL3e1XLtphxnqrOi9iWgm+u+bg==", + "dependencies": { + "tslib": "^2.0.3" + } + }, + "node_modules/upper-case-first/node_modules/tslib": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", + "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==" + }, + "node_modules/upper-case/node_modules/tslib": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", + "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==" + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + }, + "node_modules/v8-compile-cache-lib": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", + "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==" + }, + "node_modules/v8-to-istanbul": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.1.0.tgz", + "integrity": "sha512-6z3GW9x8G1gd+JIIgQQQxXuiJtCXeAjp6RaPEPLv62mH3iPHPxV6W3robxtCzNErRo6ZwTmzWhsbNvjyEBKzKA==", + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.12", + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^1.6.0" + }, + "engines": { + "node": ">=10.12.0" + } + }, + "node_modules/v8-to-istanbul/node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==" + }, + "node_modules/walker": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", + "dependencies": { + "makeerror": "1.0.12" + } + }, + "node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" + }, + "node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/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==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + }, + "node_modules/write-file-atomic": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", + "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", + "dependencies": { + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.7" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + }, + "node_modules/yargs": { + "version": "17.7.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", + "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "engines": { + "node": ">=12" + } + }, + "node_modules/yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "engines": { + "node": ">=6" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/zod": { + "version": "3.22.2", + "resolved": "https://registry.npmjs.org/zod/-/zod-3.22.2.tgz", + "integrity": "sha512-wvWkphh5WQsJbVk1tbx1l1Ly4yg+XecD+Mq280uBGt9wa5BKSWf4Mhp6GmrkPixhMxmabYY7RbzlwVP32pbGCg==", + "funding": { + "url": "https://github.com/sponsors/colinhacks" + } + } + } +} diff --git a/package.json b/package.json index 6d10703..63de3b5 100644 --- a/package.json +++ b/package.json @@ -13,26 +13,26 @@ "@ton-community/test-utils": "^0.3.0", "ton-emulator": "^2.1.1", - "ton-core": "^0.49.0", - "ton": "^13.4.1", + "ton-core": "^0.51.0", + "ton": "^13.6.0", "dotenv": "^16.3.1", "@aws-crypto/sha256-js": "^4.0.0", - "@tact-lang/compiler": "^1.1.0", + "@tact-lang/compiler": "^1.1.3", "@tact-lang/emulator": "^3.2.2", - "@types/jest": "^29.2.4", - "@types/node": "^18.11.14", + "@types/jest": "^29.5.3", + "@types/node": "^20.2.5", "@types/qs": "^6.9.7", "base64url": "^3.0.1", "enquirer": "^2.3.6", - "jest": "^29.3.1", + "jest": "^29.6.2", "open": "^8.4.0", "prando": "^6.0.1", - "prettier": "^2.5.1", + "prettier": "^2.8.8", "qs": "^6.11.0", "ton-crypto": "^3.2.0", - "ts-jest": "^29.0.3", + "ts-jest": "^29.1.1", "ts-node": "^10.9.1", - "typescript": "^4.9.4" + "typescript": "^5.1.6" } } diff --git a/sources/contract.spec.ts b/sources/contract.spec.ts index ea39fc7..c2e2d8c 100644 --- a/sources/contract.spec.ts +++ b/sources/contract.spec.ts @@ -51,7 +51,7 @@ describe("contract", () => { it("should mint successfully", async () => { const player = await blockchain.treasury("player"); - const totalSupplyBefore = (await token.getGetJettonData()).totalSupply; + const totalSupplyBefore = (await token.getGetJettonData()).total_supply; const mintAmount = toNano(100); const Mint: Mint = { $$type: "Mint", @@ -65,7 +65,7 @@ describe("contract", () => { success: true, }); - const totalSupplyAfter = (await token.getGetJettonData()).totalSupply; + const totalSupplyAfter = (await token.getGetJettonData()).total_supply; expect(totalSupplyBefore + mintAmount).toEqual(totalSupplyAfter); const playerWallet = await token.getGetWalletAddress(player.address); @@ -94,7 +94,7 @@ describe("contract", () => { // Transfer tokens from sender's wallet to receiver's wallet const transferMessage: TokenTransfer = { $$type: "TokenTransfer", - queryId: 1n, + query_id: 1n, amount: transferAmount, destination: receiver.address, response_destination: sender.address, @@ -136,7 +136,7 @@ describe("contract", () => { let burnAmount = toNano(10); const burnMessage: TokenBurn = { $$type: "TokenBurn", - queryId: 0n, + query_id: 0n, amount: burnAmount, response_destination: deployer.address, custom_payload: beginCell().endCell(), diff --git a/sources/contract.tact b/sources/contract.tact index 46bd6b1..f7b078d 100644 --- a/sources/contract.tact +++ b/sources/contract.tact @@ -1,5 +1,4 @@ -import "@stdlib/ownable"; -import "./message"; +import "./jetton"; message Mint { amount: Int; @@ -7,278 +6,39 @@ message Mint { } contract SampleJetton with Jetton { - totalSupply: Int as coins; + total_supply: Int as coins; owner: Address; content: Cell; mintable: Bool; - maxSupply: Int as coins; // Extract parameter we set here. The Jetton Standards doesn't have this parameter. + max_supply: Int as coins; // Extract parameter we set here. The Jetton Standards doesn't have this parameter. - init(owner: Address, content: Cell, maxSupply: Int) { - self.totalSupply = 0; + init(owner: Address, content: Cell, max_supply: Int) { + self.total_supply = 0; self.owner = owner; self.mintable = true; self.content = content; - self.maxSupply = maxSupply; + self.max_supply = max_supply; } receive(msg: Mint) { let ctx: Context = context(); - require(ctx.sender == self.owner, "Not Owner"); - require(self.mintable, "Can't Mint Anymore"); + require(ctx.sender == self.owner, "Not owner"); + require(self.mintable, "Not mintable"); + require(self.total_supply + msg.amount <= self.max_supply, "Max supply exceeded"); self.mint(msg.receiver, msg.amount, self.owner); // (to, amount, response_destination) } receive("Mint: 100") { // Public Minting let ctx: Context = context(); - require(self.mintable, "Can't Mint Anymore"); + require(self.mintable, "Not mintable"); + require(self.total_supply + 100 <= self.max_supply, "Max supply exceeded"); self.mint(ctx.sender, 100, self.owner); // 🔴 } receive("Owner: MintClose") { let ctx: Context = context(); - require(ctx.sender == self.owner, "Not Owner"); + require(ctx.sender == self.owner, "Not owner"); self.mintable = false; } -} - -// ============================================================================================================ // -@interface("org.ton.jetton.master") -trait Jetton with Ownable { - - totalSupply: Int; // Already set initially - mintable: Bool; - owner: Address; - content: Cell; - - maxSupply: Int; - - receive(msg: TokenUpdateContent) { - self.requireOwner(); // Allow changing content only by owner - self.content = msg.content; // Update content - } - - receive(msg: TokenBurnNotification) { - self.requireSenderAsWalletOwner(msg.response_destination); // Check wallet - self.totalSupply = self.totalSupply - msg.amount; // Update supply - if (msg.response_destination != null) { // Cashback - send(SendParameters{ - to: msg.response_destination, - value: 0, - bounce: false, - mode: SendRemainingValue + SendIgnoreErrors, - body: TokenExcesses{ queryId: msg.queryId }.toCell() - }); - } - } - - // Private Methods // - // @to The Address receive the Jetton token after minting - // @amount The amount of Jetton token being minted - // @response_destination The previous owner address - fun mint(to: Address, amount: Int, response_destination: Address) { - require(self.totalSupply + amount <= self.maxSupply, "The total supply will be overlapping."); - self.totalSupply = self.totalSupply + amount; // Update total supply - - let winit: StateInit = self.getJettonWalletInit(to); // Create message - send(SendParameters{ - to: contractAddress(winit), - value: 0, - bounce: true, - mode: SendRemainingValue, - body: TokenTransferInternal{ - queryId: 0, - amount: amount, - from: myAddress(), - response_destination: response_destination, - forward_ton_amount: 0, - forward_payload: emptySlice() - }.toCell(), - code: winit.code, - data: winit.data - }); - } - - fun requireSenderAsWalletOwner(owner: Address) { - let ctx: Context = context(); - let winit: StateInit = self.getJettonWalletInit(owner); - require(contractAddress(winit) == ctx.sender, "Invalid sender"); - } - - virtual fun getJettonWalletInit(address: Address): StateInit { - return initOf JettonDefaultWallet(myAddress(), address); - } - - // ====== Get Methods ====== // - get fun get_jetton_data(): JettonData { - let code: Cell = self.getJettonWalletInit(myAddress()).code; - return JettonData{ - totalSupply: self.totalSupply, - mintable: self.mintable, - owner: self.owner, - content: self.content, - walletCode: code - }; - } - - get fun get_wallet_address(owner: Address): Address { - let winit: StateInit = self.getJettonWalletInit(owner); - return contractAddress(winit); - } -} - -// ============================================================ // -@interface("org.ton.jetton.wallet") -contract JettonDefaultWallet { - const minTonsForStorage: Int = ton("0.01"); - const gasConsumption: Int = ton("0.01"); - - balance: Int; - owner: Address; - master: Address; - - init(master: Address, owner: Address) { - self.balance = 0; - self.owner = owner; - self.master = master; - } - - receive(msg: TokenTransfer) { // 0xf8a7ea5 - let ctx: Context = context(); // Check sender - require(ctx.sender == self.owner, "Invalid sender"); - - // Gas checks - let fwdFee: Int = ctx.readForwardFee() + ctx.readForwardFee(); - let final: Int = 2 * self.gasConsumption + self.minTonsForStorage + fwdFee; - require(ctx.value > min(final, ton("0.01")), "Invalid value!!"); - - // Update balance - self.balance = self.balance - msg.amount; - require(self.balance >= 0, "Invalid balance"); - - let init: StateInit = initOf JettonDefaultWallet(self.master, msg.destination); - let walletAddress: Address = contractAddress(init); - send(SendParameters{ - to: walletAddress, - value: 0, - mode: SendRemainingValue, - bounce: true, - body: TokenTransferInternal{ - queryId: msg.queryId, - amount: msg.amount, - from: self.owner, - response_destination: msg.response_destination, - forward_ton_amount: msg.forward_ton_amount, - forward_payload: msg.forward_payload - }.toCell(), - code: init.code, - data: init.data - }); - } - - receive(msg: TokenTransferInternal) { // 0x178d4519 - let ctx: Context = context(); - - if (ctx.sender != self.master) { - let sinit: StateInit = initOf JettonDefaultWallet(self.master, msg.from); - require(contractAddress(sinit) == ctx.sender, "Invalid sender!"); - } - - // Update balance - self.balance = self.balance + msg.amount; - require(self.balance >= 0, "Invalid balance"); - - // Get value for gas - let msgValue: Int = self.msgValue(ctx.value); - let fwdFee: Int = ctx.readForwardFee(); - msgValue = msgValue - msg.forward_ton_amount - fwdFee; - - // 0x7362d09c - notify the new owner of JettonToken that the transfer is complete - if (msg.forward_ton_amount > 0) { - send(SendParameters{ - to: self.owner, - value: msg.forward_ton_amount, - mode: SendPayGasSeparately + SendIgnoreErrors, - bounce: false, - body: TokenNotification { - queryId: msg.queryId, - amount: msg.amount, - from: msg.from, - forward_payload: msg.forward_payload - }.toCell() - }); - } - - // 0xd53276db -- Cashback to the original Sender - if (msg.response_destination != null) { - send(SendParameters { - to: msg.response_destination, - value: msgValue, - bounce: false, - body: TokenExcesses { - queryId: msg.queryId - }.toCell(), - mode: SendIgnoreErrors - }); - } - } - - receive(msg: TokenBurn) { - let ctx: Context = context(); - require(ctx.sender == self.owner, "Invalid sender"); // Check sender - - self.balance = self.balance - msg.amount; // Update balance - require(self.balance >= 0, "Invalid balance"); - - let fwdFee: Int = ctx.readForwardFee(); // Gas checks - require(ctx.value > fwdFee + 2 * self.gasConsumption + self.minTonsForStorage, "Invalid value - Burn"); - - // Burn tokens - send(SendParameters{ - to: self.master, - value: 0, - mode: SendRemainingValue, - bounce: true, - body: TokenBurnNotification{ - queryId: msg.queryId, - amount: msg.amount, - response_destination: self.owner - }.toCell() - }); - } - - get fun msgValue(value: Int): Int { - let msgValue: Int = value; - let tonBalanceBeforeMsg: Int = myBalance() - msgValue; - let storageFee: Int = self.minTonsForStorage - min(tonBalanceBeforeMsg, self.minTonsForStorage); - msgValue = msgValue - (storageFee + self.gasConsumption); - return msgValue; - } - - bounced(src: bounced) { - self.balance = self.balance + src.amount; - } - - bounced(src: bounced) { - self.balance = self.balance + src.amount; - } - - get fun get_wallet_data(): JettonWalletData { - return JettonWalletData{ - balance: self.balance, - owner: self.owner, - master: self.master, - walletCode: (initOf JettonDefaultWallet(self.master, self.owner)).code - }; - } - - // bounced(msg: Slice) { - // // Parse bounced message - // msg.skipBits(32); // 0xFFFFFFFF - // let op: Int = msg.loadUint(32); - // let queryId: Int = msg.loadUint(64); - // let jettonAmount: Int = msg.loadCoins(); - // require(op == 0x178d4519 || op == 0x7bdd97de, "Invalid bounced message"); - // self.balance = self.balance + jettonAmount; // Update balance - // } -} \ No newline at end of file +} \ No newline at end of file diff --git a/sources/jetton.tact b/sources/jetton.tact new file mode 100644 index 0000000..ca68718 --- /dev/null +++ b/sources/jetton.tact @@ -0,0 +1,264 @@ +import "@stdlib/ownable"; +import "./messages"; + +// ============================================================================================================ // +@interface("org.ton.jetton.master") +trait Jetton with Ownable { + + total_supply: Int; // Already set initially + mintable: Bool; + owner: Address; + content: Cell; + + receive(msg: TokenUpdateContent) { + self.requireOwner(); // Allow changing content only by owner + self.content = msg.content; // Update content + } + + receive(msg: TokenBurnNotification) { + self.requireSenderAsWalletOwner(msg.response_destination); // Check wallet + self.total_supply = self.total_supply - msg.amount; // Update supply + if (msg.response_destination != null) { // Cashback + send(SendParameters{ + to: msg.response_destination, + value: 0, + bounce: false, + mode: SendRemainingValue + SendIgnoreErrors, + body: TokenExcesses{ query_id: msg.query_id }.toCell() + }); + } + } + + // Private Methods // + // @to The Address receive the Jetton token after minting + // @amount The amount of Jetton token being minted + // @response_destination The previous owner address + fun mint(to: Address, amount: Int, response_destination: Address) { + require(self.mintable, "Can't Mint Anymore"); + self.total_supply = self.total_supply + amount; // Update total supply + + let winit: StateInit = self.getJettonWalletInit(to); // Create message + send(SendParameters{ + to: contractAddress(winit), + value: 0, + bounce: true, + mode: SendRemainingValue, + body: TokenTransferInternal{ + query_id: 0, + amount: amount, + from: myAddress(), + response_destination: response_destination, + forward_ton_amount: 0, + forward_payload: emptySlice() + }.toCell(), + code: winit.code, + data: winit.data + }); + } + + fun requireSenderAsWalletOwner(owner: Address) { + let ctx: Context = context(); + let winit: StateInit = self.getJettonWalletInit(owner); + require(contractAddress(winit) == ctx.sender, "Invalid sender"); + } + + virtual fun getJettonWalletInit(address: Address): StateInit { + return initOf JettonDefaultWallet(myAddress(), address); + } + + // ====== Get Methods ====== // + get fun get_jetton_data(): JettonData { + let code: Cell = self.getJettonWalletInit(myAddress()).code; + return JettonData{ + total_supply: self.total_supply, + mintable: self.mintable, + owner: self.owner, + content: self.content, + wallet_code: code + }; + } + + get fun get_wallet_address(owner: Address): Address { + let winit: StateInit = self.getJettonWalletInit(owner); + return contractAddress(winit); + } +} + +// ============================================================ // +@interface("org.ton.jetton.wallet") +contract JettonDefaultWallet { + const minTonsForStorage: Int = ton("0.01"); + const gasConsumption: Int = ton("0.01"); + + balance: Int; + owner: Address; + master: Address; + + init(master: Address, owner: Address) { + self.balance = 0; + self.owner = owner; + self.master = master; + } + + receive(msg: TokenTransfer) { // 0xf8a7ea5 + let ctx: Context = context(); // Check sender + require(ctx.sender == self.owner, "Invalid sender"); + + // Gas checks + let fwd_fee: Int = ctx.readForwardFee() + ctx.readForwardFee(); + let final: Int = 2 * self.gasConsumption + self.minTonsForStorage + fwd_fee; + require(ctx.value > min(final, ton("0.01")), "Invalid value!!"); + + // Update balance + self.balance = self.balance - msg.amount; + require(self.balance >= 0, "Invalid balance"); + + let init: StateInit = initOf JettonDefaultWallet(self.master, msg.destination); + let wallet_address: Address = contractAddress(init); + send(SendParameters{ + to: wallet_address, + value: 0, + mode: SendRemainingValue, + bounce: true, + body: TokenTransferInternal{ + query_id: msg.query_id, + amount: msg.amount, + from: self.owner, + response_destination: msg.response_destination, + forward_ton_amount: msg.forward_ton_amount, + forward_payload: msg.forward_payload + }.toCell(), + code: init.code, + data: init.data + }); + } + + receive(msg: TokenTransferInternal) { // 0x178d4519 + let ctx: Context = context(); + + if (ctx.sender != self.master) { + let sinit: StateInit = initOf JettonDefaultWallet(self.master, msg.from); + require(contractAddress(sinit) == ctx.sender, "Invalid sender!"); + } + + // Update balance + self.balance = self.balance + msg.amount; + require(self.balance >= 0, "Invalid balance"); + + // Get value for gas + let msg_value: Int = self.msg_value(ctx.value); + let fwd_fee: Int = ctx.readForwardFee(); + msg_value = msg_value - msg.forward_ton_amount - fwd_fee; + + // 0x7362d09c - notify the new owner of JettonToken that the transfer is complete + if (msg.forward_ton_amount > 0) { + send(SendParameters{ + to: self.owner, + value: msg.forward_ton_amount, + mode: SendPayGasSeparately + SendIgnoreErrors, + bounce: false, + body: TokenNotification { + query_id: msg.query_id, + amount: msg.amount, + from: msg.from, + forward_payload: msg.forward_payload + }.toCell() + }); + } + + // 0xd53276db -- Cashback to the original Sender + if (msg.response_destination != null) { + send(SendParameters { + to: msg.response_destination, + value: msg_value, + bounce: false, + body: TokenExcesses { + query_id: msg.query_id + }.toCell(), + mode: SendIgnoreErrors + }); + } + } + + receive(msg: TokenBurn) { + let ctx: Context = context(); + require(ctx.sender == self.owner, "Invalid sender"); // Check sender + + self.balance = self.balance - msg.amount; // Update balance + require(self.balance >= 0, "Invalid balance"); + + let fwd_fee: Int = ctx.readForwardFee(); // Gas checks + require(ctx.value > fwd_fee + 2 * self.gasConsumption + self.minTonsForStorage, "Invalid value - Burn"); + + // Burn tokens + send(SendParameters{ + to: self.master, + value: 0, + mode: SendRemainingValue, + bounce: true, + body: TokenBurnNotification{ + query_id: msg.query_id, + amount: msg.amount, + response_destination: self.owner + }.toCell() + }); + } + + receive(msg: ProvideWalletAddress) { + require(context().value >= ton("0.0061"), "Insufficient gas"); + let init: StateInit = initOf JettonDefaultWallet(self.master, msg.owner_address); + let wallet_address: Address = contractAddress(init); + + let response_body: TakeWalletAddress = TakeWalletAddress{ + query_id: msg.query_id, + wallet_address: wallet_address, + owner_address: null + }; + if (msg.include_address) { + response_body.owner_address = msg.owner_address; + } + send(SendParameters{ + to: sender(), + value: 0, + mode: SendRemainingValue, + bounce: true, + body: response_body.toCell() + }); + } + + get fun msg_value(value: Int): Int { + let msg_value: Int = value; + let ton_balance_before_msg: Int = myBalance() - msg_value; + let storage_fee: Int = self.minTonsForStorage - min(ton_balance_before_msg, self.minTonsForStorage); + msg_value = msg_value - (storage_fee + self.gasConsumption); + return msg_value; + } + + bounced(src: bounced) { + self.balance = self.balance + src.amount; + } + + bounced(src: bounced) { + self.balance = self.balance + src.amount; + } + + get fun get_wallet_data(): JettonWalletData { + return JettonWalletData{ + balance: self.balance, + owner: self.owner, + master: self.master, + wallet_code: (initOf JettonDefaultWallet(self.master, self.owner)).code + }; + } + + // bounced(msg: Slice) { + // // Parse bounced message + // msg.skipBits(32); // 0xFFFFFFFF + // let op: Int = msg.loadUint(32); + // let query_id: Int = msg.loadUint(64); + // let jettonAmount: Int = msg.loadCoins(); + // require(op == 0x178d4519 || op == 0x7bdd97de, "Invalid bounced message"); + // self.balance = self.balance + jettonAmount; // Update balance + // } + +} diff --git a/sources/message.tact b/sources/messages.tact similarity index 68% rename from sources/message.tact rename to sources/messages.tact index 0b5626f..ffd3d95 100644 --- a/sources/message.tact +++ b/sources/messages.tact @@ -1,20 +1,20 @@ struct JettonData { - totalSupply: Int; + total_supply: Int; mintable: Bool; owner: Address; content: Cell; - walletCode: Cell; + wallet_code: Cell; } struct JettonWalletData { balance: Int; owner: Address; master: Address; - walletCode: Cell; + wallet_code: Cell; } message(0xf8a7ea5) TokenTransfer { - queryId: Int as uint64; + query_id: Int as uint64; amount: Int as coins; destination: Address; response_destination: Address; @@ -24,7 +24,7 @@ message(0xf8a7ea5) TokenTransfer { } message(0x178d4519) TokenTransferInternal { - queryId: Int as uint64; + query_id: Int as uint64; amount: Int as coins; from: Address; response_destination: Address; @@ -33,30 +33,42 @@ message(0x178d4519) TokenTransferInternal { } message(0x7362d09c) TokenNotification { - queryId: Int as uint64; + query_id: Int as uint64; amount: Int as coins; from: Address; forward_payload: Slice as remaining; // Comment Text message when Transfer the jetton } message(0x595f07bc) TokenBurn { - queryId: Int as uint64; + query_id: Int as uint64; amount: Int as coins; response_destination: Address; custom_payload: Cell?; } message(0x7bdd97de) TokenBurnNotification { - queryId: Int as uint64; + query_id: Int as uint64; amount: Int as coins; response_destination: Address; } message(0xd53276db) TokenExcesses { - queryId: Int as uint64; + query_id: Int as uint64; } message TokenUpdateContent { content: Cell; } +// ==== TEP89: Jetton Wallet Discovery ==== +message(0x2c76b973) ProvideWalletAddress { + query_id: Int as uint64; + owner_address: Address; + include_address: Bool; +} + +message(0xd1735400) TakeWalletAddress { + query_id: Int as uint64; + wallet_address: Address; + owner_address: Address?; +} diff --git a/sources/output/SampleJetton_JettonDefaultWallet.abi b/sources/output/SampleJetton_JettonDefaultWallet.abi index e05be4e..afce9a8 100644 --- a/sources/output/SampleJetton_JettonDefaultWallet.abi +++ b/sources/output/SampleJetton_JettonDefaultWallet.abi @@ -1 +1 @@ -{"name":"JettonDefaultWallet","types":[{"name":"StateInit","header":null,"fields":[{"name":"code","type":{"kind":"simple","type":"cell","optional":false}},{"name":"data","type":{"kind":"simple","type":"cell","optional":false}}]},{"name":"Context","header":null,"fields":[{"name":"bounced","type":{"kind":"simple","type":"bool","optional":false}},{"name":"sender","type":{"kind":"simple","type":"address","optional":false}},{"name":"value","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"raw","type":{"kind":"simple","type":"slice","optional":false}}]},{"name":"SendParameters","header":null,"fields":[{"name":"bounce","type":{"kind":"simple","type":"bool","optional":false}},{"name":"to","type":{"kind":"simple","type":"address","optional":false}},{"name":"value","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"mode","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"body","type":{"kind":"simple","type":"cell","optional":true}},{"name":"code","type":{"kind":"simple","type":"cell","optional":true}},{"name":"data","type":{"kind":"simple","type":"cell","optional":true}}]},{"name":"ChangeOwner","header":2174598809,"fields":[{"name":"queryId","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"newOwner","type":{"kind":"simple","type":"address","optional":false}}]},{"name":"ChangeOwnerOk","header":846932810,"fields":[{"name":"queryId","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"newOwner","type":{"kind":"simple","type":"address","optional":false}}]},{"name":"JettonData","header":null,"fields":[{"name":"totalSupply","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"mintable","type":{"kind":"simple","type":"bool","optional":false}},{"name":"owner","type":{"kind":"simple","type":"address","optional":false}},{"name":"content","type":{"kind":"simple","type":"cell","optional":false}},{"name":"walletCode","type":{"kind":"simple","type":"cell","optional":false}}]},{"name":"JettonWalletData","header":null,"fields":[{"name":"balance","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"owner","type":{"kind":"simple","type":"address","optional":false}},{"name":"master","type":{"kind":"simple","type":"address","optional":false}},{"name":"walletCode","type":{"kind":"simple","type":"cell","optional":false}}]},{"name":"TokenTransfer","header":260734629,"fields":[{"name":"queryId","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"destination","type":{"kind":"simple","type":"address","optional":false}},{"name":"response_destination","type":{"kind":"simple","type":"address","optional":false}},{"name":"custom_payload","type":{"kind":"simple","type":"cell","optional":true}},{"name":"forward_ton_amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"forward_payload","type":{"kind":"simple","type":"slice","optional":false,"format":"remainder"}}]},{"name":"TokenTransferInternal","header":395134233,"fields":[{"name":"queryId","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"from","type":{"kind":"simple","type":"address","optional":false}},{"name":"response_destination","type":{"kind":"simple","type":"address","optional":false}},{"name":"forward_ton_amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"forward_payload","type":{"kind":"simple","type":"slice","optional":false,"format":"remainder"}}]},{"name":"TokenNotification","header":1935855772,"fields":[{"name":"queryId","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"from","type":{"kind":"simple","type":"address","optional":false}},{"name":"forward_payload","type":{"kind":"simple","type":"slice","optional":false,"format":"remainder"}}]},{"name":"TokenBurn","header":1499400124,"fields":[{"name":"queryId","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"response_destination","type":{"kind":"simple","type":"address","optional":false}},{"name":"custom_payload","type":{"kind":"simple","type":"cell","optional":true}}]},{"name":"TokenBurnNotification","header":2078119902,"fields":[{"name":"queryId","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"response_destination","type":{"kind":"simple","type":"address","optional":false}}]},{"name":"TokenExcesses","header":3576854235,"fields":[{"name":"queryId","type":{"kind":"simple","type":"uint","optional":false,"format":64}}]},{"name":"TokenUpdateContent","header":2937889386,"fields":[{"name":"content","type":{"kind":"simple","type":"cell","optional":false}}]},{"name":"Mint","header":4235234258,"fields":[{"name":"amount","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"receiver","type":{"kind":"simple","type":"address","optional":false}}]}],"receivers":[{"receiver":"internal","message":{"kind":"typed","type":"TokenTransfer"}},{"receiver":"internal","message":{"kind":"typed","type":"TokenTransferInternal"}},{"receiver":"internal","message":{"kind":"typed","type":"TokenBurn"}}],"getters":[{"name":"msgValue","arguments":[{"name":"value","type":{"kind":"simple","type":"int","optional":false,"format":257}}],"returnType":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"get_wallet_data","arguments":[],"returnType":{"kind":"simple","type":"JettonWalletData","optional":false}}],"errors":{"2":{"message":"Stack undeflow"},"3":{"message":"Stack overflow"},"4":{"message":"Integer overflow"},"5":{"message":"Integer out of expected range"},"6":{"message":"Invalid opcode"},"7":{"message":"Type check error"},"8":{"message":"Cell overflow"},"9":{"message":"Cell underflow"},"10":{"message":"Dictionary error"},"13":{"message":"Out of gas error"},"32":{"message":"Method ID not found"},"34":{"message":"Action is invalid or not supported"},"37":{"message":"Not enough TON"},"38":{"message":"Not enough extra-currencies"},"128":{"message":"Null reference exception"},"129":{"message":"Invalid serialization prefix"},"130":{"message":"Invalid incoming message"},"131":{"message":"Constraints error"},"132":{"message":"Access denied"},"133":{"message":"Contract stopped"},"134":{"message":"Invalid argument"},"135":{"message":"Code of a contract was not found"},"136":{"message":"Invalid address"},"137":{"message":"Masterchain support is not enabled for this contract"},"3734":{"message":"Not Owner"},"4159":{"message":"Invalid value!!"},"4429":{"message":"Invalid sender"},"6898":{"message":"The total supply will be overlapping."},"18668":{"message":"Can't Mint Anymore"},"42708":{"message":"Invalid sender!"},"43422":{"message":"Invalid value - Burn"},"62972":{"message":"Invalid balance"}},"interfaces":["org.ton.introspection.v0","org.ton.abi.ipfs.v0","org.ton.deploy.lazy.v0","org.ton.chain.workchain.v0","org.ton.jetton.wallet"]} \ No newline at end of file +{"name":"JettonDefaultWallet","types":[{"name":"StateInit","header":null,"fields":[{"name":"code","type":{"kind":"simple","type":"cell","optional":false}},{"name":"data","type":{"kind":"simple","type":"cell","optional":false}}]},{"name":"Context","header":null,"fields":[{"name":"bounced","type":{"kind":"simple","type":"bool","optional":false}},{"name":"sender","type":{"kind":"simple","type":"address","optional":false}},{"name":"value","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"raw","type":{"kind":"simple","type":"slice","optional":false}}]},{"name":"SendParameters","header":null,"fields":[{"name":"bounce","type":{"kind":"simple","type":"bool","optional":false}},{"name":"to","type":{"kind":"simple","type":"address","optional":false}},{"name":"value","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"mode","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"body","type":{"kind":"simple","type":"cell","optional":true}},{"name":"code","type":{"kind":"simple","type":"cell","optional":true}},{"name":"data","type":{"kind":"simple","type":"cell","optional":true}}]},{"name":"ChangeOwner","header":2174598809,"fields":[{"name":"queryId","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"newOwner","type":{"kind":"simple","type":"address","optional":false}}]},{"name":"ChangeOwnerOk","header":846932810,"fields":[{"name":"queryId","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"newOwner","type":{"kind":"simple","type":"address","optional":false}}]},{"name":"JettonData","header":null,"fields":[{"name":"total_supply","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"mintable","type":{"kind":"simple","type":"bool","optional":false}},{"name":"owner","type":{"kind":"simple","type":"address","optional":false}},{"name":"content","type":{"kind":"simple","type":"cell","optional":false}},{"name":"wallet_code","type":{"kind":"simple","type":"cell","optional":false}}]},{"name":"JettonWalletData","header":null,"fields":[{"name":"balance","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"owner","type":{"kind":"simple","type":"address","optional":false}},{"name":"master","type":{"kind":"simple","type":"address","optional":false}},{"name":"wallet_code","type":{"kind":"simple","type":"cell","optional":false}}]},{"name":"TokenTransfer","header":260734629,"fields":[{"name":"query_id","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"destination","type":{"kind":"simple","type":"address","optional":false}},{"name":"response_destination","type":{"kind":"simple","type":"address","optional":false}},{"name":"custom_payload","type":{"kind":"simple","type":"cell","optional":true}},{"name":"forward_ton_amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"forward_payload","type":{"kind":"simple","type":"slice","optional":false,"format":"remainder"}}]},{"name":"TokenTransferInternal","header":395134233,"fields":[{"name":"query_id","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"from","type":{"kind":"simple","type":"address","optional":false}},{"name":"response_destination","type":{"kind":"simple","type":"address","optional":false}},{"name":"forward_ton_amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"forward_payload","type":{"kind":"simple","type":"slice","optional":false,"format":"remainder"}}]},{"name":"TokenNotification","header":1935855772,"fields":[{"name":"query_id","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"from","type":{"kind":"simple","type":"address","optional":false}},{"name":"forward_payload","type":{"kind":"simple","type":"slice","optional":false,"format":"remainder"}}]},{"name":"TokenBurn","header":1499400124,"fields":[{"name":"query_id","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"response_destination","type":{"kind":"simple","type":"address","optional":false}},{"name":"custom_payload","type":{"kind":"simple","type":"cell","optional":true}}]},{"name":"TokenBurnNotification","header":2078119902,"fields":[{"name":"query_id","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"response_destination","type":{"kind":"simple","type":"address","optional":false}}]},{"name":"TokenExcesses","header":3576854235,"fields":[{"name":"query_id","type":{"kind":"simple","type":"uint","optional":false,"format":64}}]},{"name":"TokenUpdateContent","header":2937889386,"fields":[{"name":"content","type":{"kind":"simple","type":"cell","optional":false}}]},{"name":"ProvideWalletAddress","header":745978227,"fields":[{"name":"query_id","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"owner_address","type":{"kind":"simple","type":"address","optional":false}},{"name":"include_address","type":{"kind":"simple","type":"bool","optional":false}}]},{"name":"TakeWalletAddress","header":3513996288,"fields":[{"name":"query_id","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"wallet_address","type":{"kind":"simple","type":"address","optional":false}},{"name":"owner_address","type":{"kind":"simple","type":"address","optional":true}}]},{"name":"Mint","header":4235234258,"fields":[{"name":"amount","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"receiver","type":{"kind":"simple","type":"address","optional":false}}]}],"receivers":[{"receiver":"internal","message":{"kind":"typed","type":"TokenTransfer"}},{"receiver":"internal","message":{"kind":"typed","type":"TokenTransferInternal"}},{"receiver":"internal","message":{"kind":"typed","type":"TokenBurn"}},{"receiver":"internal","message":{"kind":"typed","type":"ProvideWalletAddress"}}],"getters":[{"name":"msg_value","arguments":[{"name":"value","type":{"kind":"simple","type":"int","optional":false,"format":257}}],"returnType":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"get_wallet_data","arguments":[],"returnType":{"kind":"simple","type":"JettonWalletData","optional":false}}],"errors":{"2":{"message":"Stack undeflow"},"3":{"message":"Stack overflow"},"4":{"message":"Integer overflow"},"5":{"message":"Integer out of expected range"},"6":{"message":"Invalid opcode"},"7":{"message":"Type check error"},"8":{"message":"Cell overflow"},"9":{"message":"Cell underflow"},"10":{"message":"Dictionary error"},"13":{"message":"Out of gas error"},"32":{"message":"Method ID not found"},"34":{"message":"Action is invalid or not supported"},"37":{"message":"Not enough TON"},"38":{"message":"Not enough extra-currencies"},"128":{"message":"Null reference exception"},"129":{"message":"Invalid serialization prefix"},"130":{"message":"Invalid incoming message"},"131":{"message":"Constraints error"},"132":{"message":"Access denied"},"133":{"message":"Contract stopped"},"134":{"message":"Invalid argument"},"135":{"message":"Code of a contract was not found"},"136":{"message":"Invalid address"},"137":{"message":"Masterchain support is not enabled for this contract"},"3688":{"message":"Not mintable"},"4159":{"message":"Invalid value!!"},"4429":{"message":"Invalid sender"},"12241":{"message":"Max supply exceeded"},"14534":{"message":"Not owner"},"18668":{"message":"Can't Mint Anymore"},"23951":{"message":"Insufficient gas"},"42708":{"message":"Invalid sender!"},"43422":{"message":"Invalid value - Burn"},"62972":{"message":"Invalid balance"}},"interfaces":["org.ton.introspection.v0","org.ton.abi.ipfs.v0","org.ton.deploy.lazy.v0","org.ton.chain.workchain.v0","org.ton.jetton.wallet"]} \ No newline at end of file diff --git a/sources/output/SampleJetton_JettonDefaultWallet.code.boc b/sources/output/SampleJetton_JettonDefaultWallet.code.boc index e80394a..a2c36f3 100644 Binary files a/sources/output/SampleJetton_JettonDefaultWallet.code.boc and b/sources/output/SampleJetton_JettonDefaultWallet.code.boc differ diff --git a/sources/output/SampleJetton_JettonDefaultWallet.code.fc b/sources/output/SampleJetton_JettonDefaultWallet.code.fc index bb092b1..84181bc 100644 --- a/sources/output/SampleJetton_JettonDefaultWallet.code.fc +++ b/sources/output/SampleJetton_JettonDefaultWallet.code.fc @@ -18,18 +18,18 @@ return ($self'balance, $self'owner, $self'master); } -((int, slice, slice), int) $JettonDefaultWallet$_fun_msgValue((int, slice, slice) $self, int $value) impure inline_ref { +((int, slice, slice), int) $JettonDefaultWallet$_fun_msg_value((int, slice, slice) $self, int $value) impure inline_ref { var (($self'balance, $self'owner, $self'master)) = $self; - int $msgValue = $value; - int $tonBalanceBeforeMsg = (__tact_my_balance() - $msgValue); - int $storageFee = (10000000 - min($tonBalanceBeforeMsg, 10000000)); - $msgValue = ($msgValue - ($storageFee + 10000000)); - return (($self'balance, $self'owner, $self'master), $msgValue); + int $msg_value = $value; + int $ton_balance_before_msg = (__tact_my_balance() - $msg_value); + int $storage_fee = (10000000 - min($ton_balance_before_msg, 10000000)); + $msg_value = ($msg_value - ($storage_fee + 10000000)); + return (($self'balance, $self'owner, $self'master), $msg_value); } ((int, slice, slice), (int, slice, slice, cell)) $JettonDefaultWallet$_fun_get_wallet_data((int, slice, slice) $self) impure inline_ref { var (($self'balance, $self'owner, $self'master)) = $self; - return (($self'balance, $self'owner, $self'master), $JettonWalletData$_constructor_balance_owner_master_walletCode($self'balance, $self'owner, $self'master, $StateInit$_get_code($JettonDefaultWallet$_init_child(__tact_context_sys, $self'master, $self'owner)))); + return (($self'balance, $self'owner, $self'master), $JettonWalletData$_constructor_balance_owner_master_wallet_code($self'balance, $self'owner, $self'master, $StateInit$_get_code($JettonDefaultWallet$_init_child(__tact_context_sys, $self'master, $self'owner)))); } ;; @@ -38,23 +38,23 @@ (((int, slice, slice)), ()) $JettonDefaultWallet$_internal_binary_TokenTransfer((int, slice, slice) $self, (int, int, slice, slice, cell, int, slice) $msg) impure inline { var ($self'balance, $self'owner, $self'master) = $self; - var ($msg'queryId, $msg'amount, $msg'destination, $msg'response_destination, $msg'custom_payload, $msg'forward_ton_amount, $msg'forward_payload) = $msg; + var ($msg'query_id, $msg'amount, $msg'destination, $msg'response_destination, $msg'custom_payload, $msg'forward_ton_amount, $msg'forward_payload) = $msg; var ($ctx'bounced, $ctx'sender, $ctx'value, $ctx'raw) = __tact_context_get(); throw_unless(4429, ( __tact_slice_eq_bits($self'owner, $ctx'sender) )); - int $fwdFee = ($Context$_fun_readForwardFee(($ctx'bounced, $ctx'sender, $ctx'value, $ctx'raw)) + $Context$_fun_readForwardFee(($ctx'bounced, $ctx'sender, $ctx'value, $ctx'raw))); - int $final = (((2 * 10000000) + 10000000) + $fwdFee); + int $fwd_fee = ($Context$_fun_readForwardFee(($ctx'bounced, $ctx'sender, $ctx'value, $ctx'raw)) + $Context$_fun_readForwardFee(($ctx'bounced, $ctx'sender, $ctx'value, $ctx'raw))); + int $final = (((2 * 10000000) + 10000000) + $fwd_fee); throw_unless(4159, ($ctx'value > min($final, 10000000))); $self'balance = ($self'balance - $msg'amount); throw_unless(62972, ($self'balance >= 0)); var ($init'code, $init'data) = $JettonDefaultWallet$_init_child(__tact_context_sys, $self'master, $msg'destination); - slice $walletAddress = $global_contractAddress(($init'code, $init'data)); - $global_send($SendParameters$_constructor_to_value_mode_bounce_body_code_data($walletAddress, 0, 64, true, $TokenTransferInternal$_store_cell($TokenTransferInternal$_constructor_queryId_amount_from_response_destination_forward_ton_amount_forward_payload($msg'queryId, $msg'amount, $self'owner, $msg'response_destination, $msg'forward_ton_amount, $msg'forward_payload)), $init'code, $init'data)); + slice $wallet_address = $global_contractAddress(($init'code, $init'data)); + $global_send($SendParameters$_constructor_to_value_mode_bounce_body_code_data($wallet_address, 0, 64, true, $TokenTransferInternal$_store_cell($TokenTransferInternal$_constructor_query_id_amount_from_response_destination_forward_ton_amount_forward_payload($msg'query_id, $msg'amount, $self'owner, $msg'response_destination, $msg'forward_ton_amount, $msg'forward_payload)), $init'code, $init'data)); return (($self'balance, $self'owner, $self'master), ()); } (((int, slice, slice)), ()) $JettonDefaultWallet$_internal_binary_TokenTransferInternal((int, slice, slice) $self, (int, int, slice, slice, int, slice) $msg) impure inline { var ($self'balance, $self'owner, $self'master) = $self; - var ($msg'queryId, $msg'amount, $msg'from, $msg'response_destination, $msg'forward_ton_amount, $msg'forward_payload) = $msg; + var ($msg'query_id, $msg'amount, $msg'from, $msg'response_destination, $msg'forward_ton_amount, $msg'forward_payload) = $msg; var ($ctx'bounced, $ctx'sender, $ctx'value, $ctx'raw) = __tact_context_get(); if (( ~ __tact_slice_eq_bits($self'master, $ctx'sender) )) { var ($sinit'code, $sinit'data) = $JettonDefaultWallet$_init_child(__tact_context_sys, $self'master, $msg'from); @@ -62,41 +62,55 @@ } $self'balance = ($self'balance + $msg'amount); throw_unless(62972, ($self'balance >= 0)); - int $msgValue = ($self'balance, $self'owner, $self'master)~$JettonDefaultWallet$_fun_msgValue($ctx'value); - int $fwdFee = $Context$_fun_readForwardFee(($ctx'bounced, $ctx'sender, $ctx'value, $ctx'raw)); - $msgValue = (($msgValue - $msg'forward_ton_amount) - $fwdFee); + int $msg_value = ($self'balance, $self'owner, $self'master)~$JettonDefaultWallet$_fun_msg_value($ctx'value); + int $fwd_fee = $Context$_fun_readForwardFee(($ctx'bounced, $ctx'sender, $ctx'value, $ctx'raw)); + $msg_value = (($msg_value - $msg'forward_ton_amount) - $fwd_fee); if (($msg'forward_ton_amount > 0)) { - $global_send($SendParameters$_constructor_to_value_mode_bounce_body($self'owner, $msg'forward_ton_amount, (1 + 2), false, $TokenNotification$_store_cell($TokenNotification$_constructor_queryId_amount_from_forward_payload($msg'queryId, $msg'amount, $msg'from, $msg'forward_payload)))); + $global_send($SendParameters$_constructor_to_value_mode_bounce_body($self'owner, $msg'forward_ton_amount, (1 + 2), false, $TokenNotification$_store_cell($TokenNotification$_constructor_query_id_amount_from_forward_payload($msg'query_id, $msg'amount, $msg'from, $msg'forward_payload)))); } if ((~ null?($msg'response_destination))) { - $global_send($SendParameters$_constructor_to_value_bounce_body_mode($msg'response_destination, $msgValue, false, $TokenExcesses$_store_cell($TokenExcesses$_constructor_queryId($msg'queryId)), 2)); + $global_send($SendParameters$_constructor_to_value_bounce_body_mode($msg'response_destination, $msg_value, false, $TokenExcesses$_store_cell($TokenExcesses$_constructor_query_id($msg'query_id)), 2)); } return (($self'balance, $self'owner, $self'master), ()); } (((int, slice, slice)), ()) $JettonDefaultWallet$_internal_binary_TokenBurn((int, slice, slice) $self, (int, int, slice, cell) $msg) impure inline { var ($self'balance, $self'owner, $self'master) = $self; - var ($msg'queryId, $msg'amount, $msg'response_destination, $msg'custom_payload) = $msg; + var ($msg'query_id, $msg'amount, $msg'response_destination, $msg'custom_payload) = $msg; var ($ctx'bounced, $ctx'sender, $ctx'value, $ctx'raw) = __tact_context_get(); throw_unless(4429, ( __tact_slice_eq_bits($self'owner, $ctx'sender) )); $self'balance = ($self'balance - $msg'amount); throw_unless(62972, ($self'balance >= 0)); - int $fwdFee = $Context$_fun_readForwardFee(($ctx'bounced, $ctx'sender, $ctx'value, $ctx'raw)); - throw_unless(43422, ($ctx'value > (($fwdFee + (2 * 10000000)) + 10000000))); - $global_send($SendParameters$_constructor_to_value_mode_bounce_body($self'master, 0, 64, true, $TokenBurnNotification$_store_cell($TokenBurnNotification$_constructor_queryId_amount_response_destination($msg'queryId, $msg'amount, $self'owner)))); + int $fwd_fee = $Context$_fun_readForwardFee(($ctx'bounced, $ctx'sender, $ctx'value, $ctx'raw)); + throw_unless(43422, ($ctx'value > (($fwd_fee + (2 * 10000000)) + 10000000))); + $global_send($SendParameters$_constructor_to_value_mode_bounce_body($self'master, 0, 64, true, $TokenBurnNotification$_store_cell($TokenBurnNotification$_constructor_query_id_amount_response_destination($msg'query_id, $msg'amount, $self'owner)))); + return (($self'balance, $self'owner, $self'master), ()); +} + +(((int, slice, slice)), ()) $JettonDefaultWallet$_internal_binary_ProvideWalletAddress((int, slice, slice) $self, (int, slice, int) $msg) impure inline { + var ($self'balance, $self'owner, $self'master) = $self; + var ($msg'query_id, $msg'owner_address, $msg'include_address) = $msg; + throw_unless(23951, ($Context$_get_value(__tact_context_get()) >= 6100000)); + var ($init'code, $init'data) = $JettonDefaultWallet$_init_child(__tact_context_sys, $self'master, $msg'owner_address); + slice $wallet_address = $global_contractAddress(($init'code, $init'data)); + var ($response_body'query_id, $response_body'wallet_address, $response_body'owner_address) = $TakeWalletAddress$_constructor_query_id_wallet_address_owner_address($msg'query_id, $wallet_address, null()); + if ($msg'include_address) { + $response_body'owner_address = $msg'owner_address; + } + $global_send($SendParameters$_constructor_to_value_mode_bounce_body(__tact_context_get_sender(), 0, 64, true, $TakeWalletAddress$_store_cell(($response_body'query_id, $response_body'wallet_address, $response_body'owner_address)))); return (($self'balance, $self'owner, $self'master), ()); } (((int, slice, slice)), ()) $JettonDefaultWallet$_receive_binary_bounce_TokenTransferInternal((int, slice, slice) $self, (int, int) $src) impure inline { var ($self'balance, $self'owner, $self'master) = $self; - var ($src'queryId, $src'amount) = $src; + var ($src'query_id, $src'amount) = $src; $self'balance = ($self'balance + $src'amount); return (($self'balance, $self'owner, $self'master), ()); } (((int, slice, slice)), ()) $JettonDefaultWallet$_receive_binary_bounce_TokenBurnNotification((int, slice, slice) $self, (int, int) $src) impure inline { var ($self'balance, $self'owner, $self'master) = $self; - var ($src'queryId, $src'amount) = $src; + var ($src'query_id, $src'amount) = $src; $self'balance = ($self'balance + $src'amount); return (($self'balance, $self'owner, $self'master), ()); } @@ -105,10 +119,10 @@ ;; Get methods of a Contract JettonDefaultWallet ;; -_ %msgValue(int $$value) method_id(115218) { +_ %msg_value(int $$value) method_id(72550) { int $value = $$value; var self = $JettonDefaultWallet$_contract_load(); - var res = self~$JettonDefaultWallet$_fun_msgValue($value); + var res = self~$JettonDefaultWallet$_fun_msg_value($value); return res; } @@ -129,7 +143,7 @@ _ supported_interfaces() method_id { } _ get_abi_ipfs() method_id { - return "ipfs://QmVD4nZ2CXCRiccVMHp42eugHL7KJCp7g8TgJ3G7q9Wu5n"; + return "ipfs://QmadWUeijFYD81gyUTzk1jtiKnSUQFUeWq4dktF8piLnAk"; } _ lazy_deployment_completed() method_id { @@ -198,6 +212,13 @@ _ lazy_deployment_completed() method_id { return (self, true); } + ;; Receive ProvideWalletAddress message + if (op == 745978227) { + var msg = in_msg~$ProvideWalletAddress$_load(); + self~$JettonDefaultWallet$_internal_binary_ProvideWalletAddress(msg); + return (self, true); + } + return (self, false); } diff --git a/sources/output/SampleJetton_JettonDefaultWallet.code.fif b/sources/output/SampleJetton_JettonDefaultWallet.code.fif index 996c17f..c16b9b1 100644 --- a/sources/output/SampleJetton_JettonDefaultWallet.code.fif +++ b/sources/output/SampleJetton_JettonDefaultWallet.code.fif @@ -2,11 +2,13 @@ PROGRAM{ DECLPROC __tact_verify_address DECLPROC __tact_load_address DECLPROC __tact_store_address + DECLPROC __tact_store_address_opt DECLPROC __tact_create_address DECLPROC __tact_compute_contract_address DECLPROC __tact_my_balance DECLPROC __tact_not_null DECLPROC __tact_context_get + DECLPROC __tact_context_get_sender DECLPROC __tact_store_bool DECLPROC __tact_slice_eq_bits DECLPROC __tact_dict_set_code @@ -24,9 +26,13 @@ PROGRAM{ DECLPROC $TokenBurnNotification$_load_bounced DECLPROC $TokenExcesses$_store DECLPROC $TokenExcesses$_store_cell + DECLPROC $ProvideWalletAddress$_load + DECLPROC $TakeWalletAddress$_store + DECLPROC $TakeWalletAddress$_store_cell DECLPROC $JettonDefaultWallet$_store DECLPROC $JettonDefaultWallet$_load DECLPROC $StateInit$_get_code + DECLPROC $Context$_get_value DECLPROC $JettonWalletData$_to_external DECLPROC $JettonDefaultWallet$init$_store DECLPROC $JettonDefaultWallet$init$_load @@ -36,23 +42,25 @@ PROGRAM{ DECLPROC $global_contractAddress DECLPROC $global_send DECLPROC $Context$_fun_readForwardFee - DECLPROC $TokenTransferInternal$_constructor_queryId_amount_from_response_destination_forward_ton_amount_forward_payload DECLPROC $JettonDefaultWallet$_init_child - DECLPROC $JettonDefaultWallet$_fun_msgValue - DECLPROC $JettonWalletData$_constructor_balance_owner_master_walletCode + DECLPROC $JettonDefaultWallet$_fun_msg_value + DECLPROC $JettonWalletData$_constructor_balance_owner_master_wallet_code DECLPROC $JettonDefaultWallet$_fun_get_wallet_data + DECLPROC $TokenTransferInternal$_constructor_query_id_amount_from_response_destination_forward_ton_amount_forward_payload DECLPROC $SendParameters$_constructor_to_value_mode_bounce_body_code_data DECLPROC $SendParameters$_constructor_to_value_mode_bounce_body - DECLPROC $TokenNotification$_constructor_queryId_amount_from_forward_payload + DECLPROC $TokenNotification$_constructor_query_id_amount_from_forward_payload DECLPROC $SendParameters$_constructor_to_value_bounce_body_mode - DECLPROC $TokenExcesses$_constructor_queryId - DECLPROC $TokenBurnNotification$_constructor_queryId_amount_response_destination + DECLPROC $TokenExcesses$_constructor_query_id + DECLPROC $TokenBurnNotification$_constructor_query_id_amount_response_destination + DECLPROC $TakeWalletAddress$_constructor_query_id_wallet_address_owner_address DECLPROC $JettonDefaultWallet$_internal_binary_TokenTransfer DECLPROC $JettonDefaultWallet$_internal_binary_TokenTransferInternal DECLPROC $JettonDefaultWallet$_internal_binary_TokenBurn + DECLPROC $JettonDefaultWallet$_internal_binary_ProvideWalletAddress DECLPROC $JettonDefaultWallet$_receive_binary_bounce_TokenTransferInternal DECLPROC $JettonDefaultWallet$_receive_binary_bounce_TokenBurnNotification - 115218 DECLMETHOD %msgValue + 72550 DECLMETHOD %msg_value 97026 DECLMETHOD %get_wallet_data 113617 DECLMETHOD supported_interfaces 121275 DECLMETHOD get_abi_ipfs @@ -88,6 +96,18 @@ PROGRAM{ __tact_verify_address INLINECALLDICT STSLICER }> + __tact_store_address_opt PROCINLINE:<{ + DUP + ISNULL + IF:<{ + DROP + 0 PUSHINT + SWAP + 2 STU + }>ELSE<{ + __tact_store_address INLINECALLDICT + }> + }> __tact_create_address PROCINLINE:<{ NEWC 2 PUSHINT @@ -134,6 +154,9 @@ PROGRAM{ __tact_context GETGLOB 4 UNTUPLE }> + __tact_context_get_sender PROCINLINE:<{ + __tact_context_sender GETGLOB + }> __tact_store_bool PROCINLINE:<{ SWAP 1 STI @@ -309,6 +332,35 @@ PROGRAM{ $TokenExcesses$_store INLINECALLDICT ENDC }> + $ProvideWalletAddress$_load PROCINLINE:<{ + 32 LDU + SWAP + 745978227 PUSHINT + EQUAL + 129 THROWIFNOT + 64 LDU + __tact_load_address INLINECALLDICT + SWAP + 1 LDI + 3 -ROLL + }> + $TakeWalletAddress$_store PROCINLINE:<{ + 3513996288 PUSHINT + s0 s4 XCHG2 + 32 STU + s1 s2 XCHG + 64 STU + SWAP + __tact_store_address INLINECALLDICT + SWAP + __tact_store_address_opt INLINECALLDICT + }> + $TakeWalletAddress$_store_cell PROCINLINE:<{ + NEWC + 3 -ROLL + $TakeWalletAddress$_store INLINECALLDICT + ENDC + }> $JettonDefaultWallet$_store PROCINLINE:<{ s2 s3 XCHG2 257 PUSHINT @@ -329,6 +381,10 @@ PROGRAM{ $StateInit$_get_code PROCINLINE:<{ DROP }> + $Context$_get_value PROCINLINE:<{ + s1 s3 XCHG + 3 BLKDROP + }> $JettonWalletData$_to_external PROCINLINE:<{ }> $JettonDefaultWallet$init$_store PROCINLINE:<{ @@ -505,8 +561,6 @@ PROGRAM{ 3 MULCONST 1 RSHIFT# }> - $TokenTransferInternal$_constructor_queryId_amount_from_response_destination_forward_ton_amount_forward_payload PROCINLINE:<{ - }> $JettonDefaultWallet$_init_child PROCREF:<{ s0 s2 XCHG CTOS @@ -534,7 +588,7 @@ PROGRAM{ $JettonDefaultWallet$init$_store INLINECALLDICT ENDC }> - $JettonDefaultWallet$_fun_msgValue PROCREF:<{ + $JettonDefaultWallet$_fun_msg_value PROCREF:<{ __tact_my_balance INLINECALLDICT OVER SUB @@ -546,7 +600,7 @@ PROGRAM{ ADD SUB }> - $JettonWalletData$_constructor_balance_owner_master_walletCode PROCINLINE:<{ + $JettonWalletData$_constructor_balance_owner_master_wallet_code PROCINLINE:<{ }> $JettonDefaultWallet$_fun_get_wallet_data PROCREF:<{ __tact_context_sys GETGLOB @@ -555,7 +609,9 @@ PROGRAM{ $StateInit$_get_code INLINECALLDICT s3 s2 s(-2) PU2XC s3 s(-1) PUXC - $JettonWalletData$_constructor_balance_owner_master_walletCode INLINECALLDICT + $JettonWalletData$_constructor_balance_owner_master_wallet_code INLINECALLDICT + }> + $TokenTransferInternal$_constructor_query_id_amount_from_response_destination_forward_ton_amount_forward_payload PROCINLINE:<{ }> $SendParameters$_constructor_to_value_mode_bounce_body_code_data PROCINLINE:<{ s3 s6 XCHG @@ -568,7 +624,7 @@ PROGRAM{ PUSHNULL PUSHNULL }> - $TokenNotification$_constructor_queryId_amount_from_forward_payload PROCINLINE:<{ + $TokenNotification$_constructor_query_id_amount_from_forward_payload PROCINLINE:<{ }> $SendParameters$_constructor_to_value_bounce_body_mode PROCINLINE:<{ s2 s4 XCHG @@ -576,9 +632,11 @@ PROGRAM{ PUSHNULL PUSHNULL }> - $TokenExcesses$_constructor_queryId PROCINLINE:<{ + $TokenExcesses$_constructor_query_id PROCINLINE:<{ + }> + $TokenBurnNotification$_constructor_query_id_amount_response_destination PROCINLINE:<{ }> - $TokenBurnNotification$_constructor_queryId_amount_response_destination PROCINLINE:<{ + $TakeWalletAddress$_constructor_query_id_wallet_address_owner_address PROCINLINE:<{ }> $JettonDefaultWallet$_internal_binary_TokenTransfer PROCINLINE:<{ s2 POP @@ -622,7 +680,7 @@ PROGRAM{ s12 PUSH s8 s1 s3 XCHG3 s14 s7 XCHG2 - $TokenTransferInternal$_constructor_queryId_amount_from_response_destination_forward_ton_amount_forward_payload INLINECALLDICT + $TokenTransferInternal$_constructor_query_id_amount_from_response_destination_forward_ton_amount_forward_payload INLINECALLDICT $TokenTransferInternal$_store_cell INLINECALLDICT s5 s6 XCHG 4 2 REVERSE @@ -656,7 +714,7 @@ PROGRAM{ THROWANYIFNOT s0 s11 s10 XCHG3 s11 PUSH - $JettonDefaultWallet$_fun_msgValue INLINECALLDICT + $JettonDefaultWallet$_fun_msg_value INLINECALLDICT s3 s4 XCHG s11 s12 s13 XCHG3 $Context$_fun_readForwardFee INLINECALLDICT @@ -672,7 +730,7 @@ PROGRAM{ s8 PUSH s8 s1 s3 XCHG3 s7 s4 XCHG2 - $TokenNotification$_constructor_queryId_amount_from_forward_payload INLINECALLDICT + $TokenNotification$_constructor_query_id_amount_from_forward_payload INLINECALLDICT $TokenNotification$_store_cell INLINECALLDICT s7 PUSH s6 s1 s4 XCHG3 @@ -690,7 +748,7 @@ PROGRAM{ IF:<{ FALSE s0 s3 XCHG - $TokenExcesses$_constructor_queryId INLINECALLDICT + $TokenExcesses$_constructor_query_id INLINECALLDICT $TokenExcesses$_store_cell INLINECALLDICT s1 s3 s0 XCHG3 2 PUSHINT @@ -731,7 +789,7 @@ PROGRAM{ s0 s3 XCHG TRUE s3 s6 XCPU - $TokenBurnNotification$_constructor_queryId_amount_response_destination INLINECALLDICT + $TokenBurnNotification$_constructor_query_id_amount_response_destination INLINECALLDICT $TokenBurnNotification$_store_cell INLINECALLDICT s4 PUSH s4 s1 s4 XCHG3 @@ -739,6 +797,38 @@ PROGRAM{ $SendParameters$_constructor_to_value_mode_bounce_body INLINECALLDICT $global_send INLINECALLDICT }> + $JettonDefaultWallet$_internal_binary_ProvideWalletAddress PROCINLINE:<{ + 23951 PUSHINT + __tact_context_get INLINECALLDICT + $Context$_get_value INLINECALLDICT + 6100000 PUSHINT + GEQ + THROWANYIFNOT + __tact_context_sys GETGLOB + s4 s2 PUSH2 + $JettonDefaultWallet$_init_child INLINECALLDICT + $global_contractAddress INLINECALLDICT + s1 s3 XCHG + PUSHNULL + $TakeWalletAddress$_constructor_query_id_wallet_address_owner_address INLINECALLDICT + s0 s4 XCHG + IF:<{ + s3 POP + s1 s2 XCHG + }>ELSE<{ + s2 POP + }> + __tact_context_get_sender INLINECALLDICT + 0 PUSHINT + 64 PUSHINT + s3 s4 XCHG2 + TRUE + s0 s6 XCHG + $TakeWalletAddress$_store_cell INLINECALLDICT + 4 1 REVERSE + $SendParameters$_constructor_to_value_mode_bounce_body INLINECALLDICT + $global_send INLINECALLDICT + }> $JettonDefaultWallet$_receive_binary_bounce_TokenTransferInternal PROCINLINE:<{ NIP s1 s3 XCHG @@ -751,10 +841,10 @@ PROGRAM{ ADD s0 s2 XCHG }> - %msgValue PROC:<{ + %msg_value PROC:<{ $JettonDefaultWallet$_contract_load INLINECALLDICT 3 ROLL - $JettonDefaultWallet$_fun_msgValue INLINECALLDICT + $JettonDefaultWallet$_fun_msg_value INLINECALLDICT 3 1 BLKDROP2 }> %get_wallet_data PROC:<{ @@ -771,7 +861,7 @@ PROGRAM{ 209778528950190195973528115415557644819 PUSHINT }> get_abi_ipfs PROC:<{ - x{697066733a2f2f516d5644346e5a3243584352696363564d48703432657567484c374b4a437037673854674a33473771395775356e} PUSHSLICE + x{697066733a2f2f516d6164575565696a4659443831677955547a6b316a74694b6e535551465565577134646b74463870694c6e416b} PUSHSLICE }> lazy_deployment_completed PROC:<{ c4 PUSH @@ -843,14 +933,24 @@ PROGRAM{ $JettonDefaultWallet$_internal_binary_TokenTransferInternal INLINECALLDICT TRUE }> + DUP 1499400124 PUSHINT EQUAL IFJMP:<{ + DROP $TokenBurn$_load INLINECALLDICT 1 4 BLKDROP2 $JettonDefaultWallet$_internal_binary_TokenBurn INLINECALLDICT TRUE }> + 745978227 PUSHINT + EQUAL + IFJMP:<{ + $ProvideWalletAddress$_load INLINECALLDICT + 1 3 BLKDROP2 + $JettonDefaultWallet$_internal_binary_ProvideWalletAddress INLINECALLDICT + TRUE + }> DROP FALSE }> diff --git a/sources/output/SampleJetton_JettonDefaultWallet.code.rev.fif b/sources/output/SampleJetton_JettonDefaultWallet.code.rev.fif index 2c6e7bf..36a7555 100644 --- a/sources/output/SampleJetton_JettonDefaultWallet.code.rev.fif +++ b/sources/output/SampleJetton_JettonDefaultWallet.code.rev.fif @@ -1,21 +1,22 @@ PROGRAM{ DECLPROC recv_internal; + DECLPROC ?fun_72550; DECLPROC get_wallet_data; DECLPROC supported_interfaces; - DECLPROC ?fun_115218; DECLPROC lazy_deployment_completed; DECLPROC get_abi_ipfs; DECLPROC ?fun_ref_171235c853357b3e; DECLPROC ?fun_ref_2accad73d60fa883; DECLPROC ?fun_ref_5007013235aab4c2; + DECLPROC ?fun_ref_55dff5e1e1156666; DECLPROC ?fun_ref_5655dcbe434c85c8; DECLPROC ?fun_ref_688678bd121165d5; - DECLPROC ?fun_ref_6c9d2128e70cc485; DECLPROC ?fun_ref_b8d6a373d037f795; DECLPROC ?fun_ref_b93b9862cda1783c; DECLPROC ?fun_ref_c08232f4fb018bf8; DECLPROC ?fun_ref_ca0572fa453e829f; DECLPROC ?fun_ref_d21437797e815e3e; + DECLPROC ?fun_ref_e3ab8ad6f7411b02; DECLPROC ?fun_ref_e909b9b42570c1ee; DECLPROC ?fun_ref_f691f67aa2f847fe; recv_internal PROC:<{ @@ -51,7 +52,7 @@ PROGRAM{ 2 SETGLOBVAR ?fun_ref_2accad73d60fa883 INLINECALLDICT 2 3 BLKSWAP - ?fun_ref_6c9d2128e70cc485 INLINECALLDICT + ?fun_ref_e3ab8ad6f7411b02 INLINECALLDICT 130 THROWIFNOT NEWC 3 GETGLOBVAR @@ -99,6 +100,12 @@ PROGRAM{ ENDC c4 POP }> + ?fun_72550 PROC:<{ + ?fun_ref_2accad73d60fa883 INLINECALLDICT + 1 3 BLKSWAP + ?fun_ref_688678bd121165d5 INLINECALLDICT + 3 1 BLKDROP2 + }> get_wallet_data PROC:<{ ?fun_ref_2accad73d60fa883 INLINECALLDICT ?fun_ref_c08232f4fb018bf8 INLINECALLDICT @@ -111,12 +118,6 @@ PROGRAM{ 209474421377847335869795010607481022628 PUSHINT 209778528950190195973528115415557644819 PUSHINT }> - ?fun_115218 PROC:<{ - ?fun_ref_2accad73d60fa883 INLINECALLDICT - 1 3 BLKSWAP - ?fun_ref_688678bd121165d5 INLINECALLDICT - 3 1 BLKDROP2 - }> lazy_deployment_completed PROC:<{ c4 PUSH CTOS @@ -124,7 +125,7 @@ PROGRAM{ s0 s1 XCHG }> get_abi_ipfs PROC:<{ - x{697066733A2F2F516D5644346E5A3243584352696363564D48703432657567484C374B4A437037673854674A33473771395775356E82_} PUSHSLICE + x{697066733A2F2F516D6164575565696A4659443831677955547A6B316A74694B6E535551465565577134646B74463870694C6E416B82_} PUSHSLICE }> ?fun_ref_171235c853357b3e PROCREF:<{ 32 LDU @@ -281,6 +282,136 @@ PROGRAM{ 0 PUSHINT s0 s2 XCHG }> + ?fun_ref_55dff5e1e1156666 PROCREF:<{ + 23951 PUSHINT + 1 GETGLOBVAR + 4 UNTUPLE + s1 s3 XCHG + 3 BLKDROP + 6100000 PUSHINT + GEQ + THROWANYIFNOT + 3 GETGLOBVAR + s4 s2 PUSH2 + ?fun_ref_b8d6a373d037f795 INLINECALLDICT + 0 PUSHINT + ROTREV + NEWC + 0 PUSHINT + s0 s1 XCHG + 2 STU + 3 PUSHINT + s0 s1 XCHG + 2 STU + 0 PUSHINT + s0 s1 XCHG + 1 STU + s1 s2 XCHG + STREF + STREF + ENDC + HASHCU + NEWC + 2 PUSHINT + s0 s1 XCHG + 2 STU + 0 PUSHINT + s0 s1 XCHG + 1 STU + s1 s2 XCHG + 8 STI + 256 STU + ENDC + CTOS + s0 PUSH + SBITS + 267 PUSHINT + EQUAL + 136 THROWIFNOT + s0 PUSH + 11 PLDU + s0 PUSH + 1279 PUSHINT + EQUAL + 137 THROWIF + 10 PUSHPOW2 + EQUAL + 136 THROWIFNOT + s1 s3 XCHG + NULL + s0 s4 XCHG + <{ + s3 POP + s1 s2 XCHG + }> PUSHCONT + <{ + s2 POP + }> PUSHCONT + IFELSE + 2 GETGLOBVAR + 0 PUSHINT + 64 PUSHINT + s3 s4 XCHG2 + -1 PUSHINT + s0 s6 XCHG + NEWC + 3 1 BLKSWAP + 3513996288 PUSHINT + s0 s4 XCHG2 + 32 STU + s1 s2 XCHG + 64 STU + s0 s1 XCHG + s0 PUSH + SBITS + 267 PUSHINT + EQUAL + 136 THROWIFNOT + s0 PUSH + 11 PLDU + s0 PUSH + 1279 PUSHINT + EQUAL + 137 THROWIF + 10 PUSHPOW2 + EQUAL + 136 THROWIFNOT + STSLICER + s0 s1 XCHG + s0 PUSH + ISNULL + <{ + s0 POP + 0 PUSHINT + s0 s1 XCHG + 2 STU + }> PUSHCONT + <{ + s0 PUSH + SBITS + 267 PUSHINT + EQUAL + 136 THROWIFNOT + s0 PUSH + 11 PLDU + s0 PUSH + 1279 PUSHINT + EQUAL + 137 THROWIF + 10 PUSHPOW2 + EQUAL + 136 THROWIFNOT + STSLICER + }> PUSHCONT + IFELSE + ENDC + 4 1 REVERSE + s1 s4 XCHG + s3 s3 s0 XCHG3 + NULL + NULL + ?fun_ref_b93b9862cda1783c INLINECALLDICT + }> ?fun_ref_5655dcbe434c85c8 PROCREF:<{ 1 GETGLOBVAR 4 UNTUPLE @@ -422,231 +553,32 @@ PROGRAM{ 32 STU 64 STU ENDC - s1 s3 s0 XCHG3 - 2 PUSHINT - s2 s4 XCHG - s3 s0 s0 XCHG3 - NULL - NULL - ?fun_ref_b93b9862cda1783c INLINECALLDICT - }> PUSHCONT - <{ - 3 BLKDROP - }> PUSHCONT - IFELSE - s0 s1 XCHG - }> - ?fun_ref_688678bd121165d5 PROCREF:<{ - BALANCE - 0 INDEX - s1 PUSH - SUB - 10000000 PUSHINT - TUCK - MIN - SUB - 10000000 PUSHINT - ADD - SUB - }> - ?fun_ref_6c9d2128e70cc485 PROCREF:<{ - s0 s1 XCHG - <{ - 32 PUSHINT - SDSKIPFIRST - 0 PUSHINT - s1 PUSH - SBITS - 31 GTINT - <{ - s0 POP - s0 PUSH - 32 PLDU - }> PUSHCONT - IF - s0 PUSH - 395134233 PUSHINT - EQUAL - <{ - s0 POP - 32 LDU - s0 s1 XCHG - 395134233 PUSHINT - EQUAL - 129 THROWIFNOT - 64 LDU - LDGRAMS - ROTREV - 1 2 BLKDROP2 - s1 POP - s1 s3 XCHG - ADD - s0 s2 XCHG - -1 PUSHINT - }> PUSHCONT - IFJMP - 2078119902 PUSHINT - EQUAL - <{ - 32 LDU - s0 s1 XCHG - 2078119902 PUSHINT - EQUAL - 129 THROWIFNOT - 64 LDU - LDGRAMS - ROTREV - 1 2 BLKDROP2 - s1 POP - s1 s3 XCHG - ADD - s0 s2 XCHG - -1 PUSHINT - }> PUSHCONT - IFJMP - s0 POP - -1 PUSHINT - }> PUSHCONT - IFJMP - 0 PUSHINT - s1 PUSH - SBITS - 31 GTINT - <{ - s0 POP - s0 PUSH - 32 PLDU - }> PUSHCONT - IF - s0 PUSH - 260734629 PUSHINT - EQUAL - <{ - s0 POP - ?fun_ref_171235c853357b3e INLINECALLDICT - 1 7 BLKDROP2 - ?fun_ref_ca0572fa453e829f INLINECALLDICT - -1 PUSHINT - }> IFJMPREF - s0 PUSH - 395134233 PUSHINT - EQUAL - <{ - s0 POP - ?fun_ref_e909b9b42570c1ee INLINECALLDICT - 1 6 BLKDROP2 - ?fun_ref_5655dcbe434c85c8 INLINECALLDICT - -1 PUSHINT - }> PUSHCONT - IFJMP - 1499400124 PUSHINT - EQUAL - <{ - 32 LDU - s0 s1 XCHG - 1499400124 PUSHINT - EQUAL - 129 THROWIFNOT - 64 LDU - LDGRAMS - LDMSGADDR - s0 s1 XCHG - s0 PUSH - SBITS - 267 PUSHINT - EQUAL - 136 THROWIFNOT - s0 PUSH - 11 PLDU - s0 PUSH - 1279 PUSHINT - EQUAL - 137 THROWIF - 10 PUSHPOW2 - EQUAL - 136 THROWIFNOT - s0 s1 XCHG - 1 LDI - s0 s1 XCHG - <{ - LDREF - }> PUSHCONT - <{ - NULL - s0 s1 XCHG - }> PUSHCONT - IFELSE - 4 1 BLKSWAP - 1 4 BLKDROP2 - DROP2 - 1 GETGLOBVAR - 4 UNTUPLE - 4429 PUSHINT - s8 s3 PUSH2 - SDEQ - THROWANYIFNOT - s8 s4 XCPU - SUB - 62972 PUSHINT - s1 PUSH - -1 GTINT - THROWANYIFNOT - s3 s3 s0 XCHG3 - s3 s10 PUXC - ?fun_ref_f691f67aa2f847fe INLINECALLDICT - 43422 PUSHINT - s0 s1 XCHG - 20000000 PUSHINT - ADD - 10000000 PUSHINT - ADD - s1 s2 XCHG - GREATER - THROWANYIFNOT - 0 PUSHINT - 64 PUSHINT - s0 s3 XCHG - -1 PUSHINT - s3 s6 XCPU - NEWC - 3 1 BLKSWAP - 2078119902 PUSHINT - s0 s4 XCHG2 - 32 STU - s1 s2 XCHG - 64 STU - s0 s1 XCHG - STGRAMS - s0 s1 XCHG - s0 PUSH - SBITS - 267 PUSHINT - EQUAL - 136 THROWIFNOT - s0 PUSH - 11 PLDU - s0 PUSH - 1279 PUSHINT - EQUAL - 137 THROWIF - 10 PUSHPOW2 - EQUAL - 136 THROWIFNOT - STSLICER - ENDC - s4 PUSH - s4 s1 s4 XCHG3 - s3 s3 XCHG2 - s1 s4 XCHG - s3 s3 s0 XCHG3 + s1 s3 s0 XCHG3 + 2 PUSHINT + s2 s4 XCHG + s3 s0 s0 XCHG3 NULL NULL ?fun_ref_b93b9862cda1783c INLINECALLDICT - -1 PUSHINT }> PUSHCONT - IFJMP - s0 POP - 0 PUSHINT + <{ + 3 BLKDROP + }> PUSHCONT + IFELSE + s0 s1 XCHG + }> + ?fun_ref_688678bd121165d5 PROCREF:<{ + BALANCE + 0 INDEX + s1 PUSH + SUB + 10000000 PUSHINT + TUCK + MIN + SUB + 10000000 PUSHINT + ADD + SUB }> ?fun_ref_b8d6a373d037f795 PROCREF:<{ s0 s2 XCHG @@ -1007,6 +939,240 @@ PROGRAM{ s0 s1 XCHG STSLICER }> + ?fun_ref_e3ab8ad6f7411b02 PROCREF:<{ + s0 s1 XCHG + <{ + 32 PUSHINT + SDSKIPFIRST + 0 PUSHINT + s1 PUSH + SBITS + 31 GTINT + <{ + s0 POP + s0 PUSH + 32 PLDU + }> PUSHCONT + IF + s0 PUSH + 395134233 PUSHINT + EQUAL + <{ + s0 POP + 32 LDU + s0 s1 XCHG + 395134233 PUSHINT + EQUAL + 129 THROWIFNOT + 64 LDU + LDGRAMS + ROTREV + 1 2 BLKDROP2 + s1 POP + s1 s3 XCHG + ADD + s0 s2 XCHG + -1 PUSHINT + }> PUSHCONT + IFJMP + 2078119902 PUSHINT + EQUAL + <{ + 32 LDU + s0 s1 XCHG + 2078119902 PUSHINT + EQUAL + 129 THROWIFNOT + 64 LDU + LDGRAMS + ROTREV + 1 2 BLKDROP2 + s1 POP + s1 s3 XCHG + ADD + s0 s2 XCHG + -1 PUSHINT + }> PUSHCONT + IFJMP + s0 POP + -1 PUSHINT + }> PUSHCONT + IFJMP + 0 PUSHINT + s1 PUSH + SBITS + 31 GTINT + <{ + s0 POP + s0 PUSH + 32 PLDU + }> PUSHCONT + IF + s0 PUSH + 260734629 PUSHINT + EQUAL + <{ + s0 POP + ?fun_ref_171235c853357b3e INLINECALLDICT + 1 7 BLKDROP2 + ?fun_ref_ca0572fa453e829f INLINECALLDICT + -1 PUSHINT + }> IFJMPREF + s0 PUSH + 395134233 PUSHINT + EQUAL + <{ + s0 POP + ?fun_ref_e909b9b42570c1ee INLINECALLDICT + 1 6 BLKDROP2 + ?fun_ref_5655dcbe434c85c8 INLINECALLDICT + -1 PUSHINT + }> PUSHCONT + IFJMP + s0 PUSH + 1499400124 PUSHINT + EQUAL + <{ + s0 POP + 32 LDU + s0 s1 XCHG + 1499400124 PUSHINT + EQUAL + 129 THROWIFNOT + 64 LDU + LDGRAMS + LDMSGADDR + s0 s1 XCHG + s0 PUSH + SBITS + 267 PUSHINT + EQUAL + 136 THROWIFNOT + s0 PUSH + 11 PLDU + s0 PUSH + 1279 PUSHINT + EQUAL + 137 THROWIF + 10 PUSHPOW2 + EQUAL + 136 THROWIFNOT + s0 s1 XCHG + 1 LDI + s0 s1 XCHG + <{ + LDREF + }> PUSHCONT + <{ + NULL + s0 s1 XCHG + }> PUSHCONT + IFELSE + 4 1 BLKSWAP + 1 4 BLKDROP2 + DROP2 + 1 GETGLOBVAR + 4 UNTUPLE + 4429 PUSHINT + s8 s3 PUSH2 + SDEQ + THROWANYIFNOT + s8 s4 XCPU + SUB + 62972 PUSHINT + s1 PUSH + -1 GTINT + THROWANYIFNOT + s3 s3 s0 XCHG3 + s3 s10 PUXC + ?fun_ref_f691f67aa2f847fe INLINECALLDICT + 43422 PUSHINT + s0 s1 XCHG + 20000000 PUSHINT + ADD + 10000000 PUSHINT + ADD + s1 s2 XCHG + GREATER + THROWANYIFNOT + 0 PUSHINT + 64 PUSHINT + s0 s3 XCHG + -1 PUSHINT + s3 s6 XCPU + NEWC + 3 1 BLKSWAP + 2078119902 PUSHINT + s0 s4 XCHG2 + 32 STU + s1 s2 XCHG + 64 STU + s0 s1 XCHG + STGRAMS + s0 s1 XCHG + s0 PUSH + SBITS + 267 PUSHINT + EQUAL + 136 THROWIFNOT + s0 PUSH + 11 PLDU + s0 PUSH + 1279 PUSHINT + EQUAL + 137 THROWIF + 10 PUSHPOW2 + EQUAL + 136 THROWIFNOT + STSLICER + ENDC + s4 PUSH + s4 s1 s4 XCHG3 + s3 s3 XCHG2 + s1 s4 XCHG + s3 s3 s0 XCHG3 + NULL + NULL + ?fun_ref_b93b9862cda1783c INLINECALLDICT + -1 PUSHINT + }> PUSHCONT + IFJMP + 745978227 PUSHINT + EQUAL + <{ + 32 LDU + s0 s1 XCHG + 745978227 PUSHINT + EQUAL + 129 THROWIFNOT + 64 LDU + LDMSGADDR + s0 s1 XCHG + s0 PUSH + SBITS + 267 PUSHINT + EQUAL + 136 THROWIFNOT + s0 PUSH + 11 PLDU + s0 PUSH + 1279 PUSHINT + EQUAL + 137 THROWIF + 10 PUSHPOW2 + EQUAL + 136 THROWIFNOT + s0 s1 XCHG + 1 LDI + 3 1 BLKSWAP + 1 3 BLKDROP2 + ?fun_ref_55dff5e1e1156666 INLINECALLDICT + -1 PUSHINT + }> PUSHCONT + IFJMP + s0 POP + 0 PUSHINT + }> ?fun_ref_e909b9b42570c1ee PROCREF:<{ 32 LDU s0 s1 XCHG diff --git a/sources/output/SampleJetton_JettonDefaultWallet.headers.fc b/sources/output/SampleJetton_JettonDefaultWallet.headers.fc index 3f22269..1b8add1 100644 --- a/sources/output/SampleJetton_JettonDefaultWallet.headers.fc +++ b/sources/output/SampleJetton_JettonDefaultWallet.headers.fc @@ -12,6 +12,9 @@ slice __tact_verify_address(slice address) inline; ;; __tact_store_address builder __tact_store_address(builder b, slice address) inline; +;; __tact_store_address_opt +builder __tact_store_address_opt(builder b, slice address) inline; + ;; __tact_create_address slice __tact_create_address(int chain, int hash) inline; @@ -27,6 +30,9 @@ forall X -> X __tact_not_null(X x) inline; ;; __tact_context_get (int, slice, int, slice) __tact_context_get() inline; +;; __tact_context_get_sender +slice __tact_context_get_sender() inline; + ;; __tact_store_bool builder __tact_store_bool(builder b, int v) inline; @@ -78,6 +84,15 @@ builder $TokenExcesses$_store(builder build_0, (int) v) inline; ;; $TokenExcesses$_store_cell cell $TokenExcesses$_store_cell((int) v) inline; +;; $ProvideWalletAddress$_load +(slice, ((int, slice, int))) $ProvideWalletAddress$_load(slice sc_0) inline; + +;; $TakeWalletAddress$_store +builder $TakeWalletAddress$_store(builder build_0, (int, slice, slice) v) inline; + +;; $TakeWalletAddress$_store_cell +cell $TakeWalletAddress$_store_cell((int, slice, slice) v) inline; + ;; $JettonDefaultWallet$_store builder $JettonDefaultWallet$_store(builder build_0, (int, slice, slice) v) inline; @@ -87,6 +102,9 @@ builder $JettonDefaultWallet$_store(builder build_0, (int, slice, slice) v) inli ;; $StateInit$_get_code _ $StateInit$_get_code((cell, cell) v) inline; +;; $Context$_get_value +_ $Context$_get_value((int, slice, int, slice) v) inline; + ;; $JettonWalletData$_to_external (int, slice, slice, cell) $JettonWalletData$_to_external(((int, slice, slice, cell)) v) inline; @@ -114,35 +132,38 @@ slice $global_contractAddress((cell, cell) $s) impure inline; ;; $Context$_fun_readForwardFee int $Context$_fun_readForwardFee((int, slice, int, slice) $self) impure inline_ref; -;; $TokenTransferInternal$_constructor_queryId_amount_from_response_destination_forward_ton_amount_forward_payload -((int, int, slice, slice, int, slice)) $TokenTransferInternal$_constructor_queryId_amount_from_response_destination_forward_ton_amount_forward_payload(int queryId, int amount, slice from, slice response_destination, int forward_ton_amount, slice forward_payload) inline; - ;; $JettonDefaultWallet$_init_child (cell, cell) $JettonDefaultWallet$_init_child(cell sys', slice $master, slice $owner) inline_ref; -;; $JettonDefaultWallet$_fun_msgValue -((int, slice, slice), int) $JettonDefaultWallet$_fun_msgValue((int, slice, slice) $self, int $value) impure inline_ref; +;; $JettonDefaultWallet$_fun_msg_value +((int, slice, slice), int) $JettonDefaultWallet$_fun_msg_value((int, slice, slice) $self, int $value) impure inline_ref; -;; $JettonWalletData$_constructor_balance_owner_master_walletCode -((int, slice, slice, cell)) $JettonWalletData$_constructor_balance_owner_master_walletCode(int balance, slice owner, slice master, cell walletCode) inline; +;; $JettonWalletData$_constructor_balance_owner_master_wallet_code +((int, slice, slice, cell)) $JettonWalletData$_constructor_balance_owner_master_wallet_code(int balance, slice owner, slice master, cell wallet_code) inline; ;; $JettonDefaultWallet$_fun_get_wallet_data ((int, slice, slice), (int, slice, slice, cell)) $JettonDefaultWallet$_fun_get_wallet_data((int, slice, slice) $self) impure inline_ref; +;; $TokenTransferInternal$_constructor_query_id_amount_from_response_destination_forward_ton_amount_forward_payload +((int, int, slice, slice, int, slice)) $TokenTransferInternal$_constructor_query_id_amount_from_response_destination_forward_ton_amount_forward_payload(int query_id, int amount, slice from, slice response_destination, int forward_ton_amount, slice forward_payload) inline; + ;; $SendParameters$_constructor_to_value_mode_bounce_body_code_data ((int, slice, int, int, cell, cell, cell)) $SendParameters$_constructor_to_value_mode_bounce_body_code_data(slice to, int value, int mode, int bounce, cell body, cell code, cell data) inline; ;; $SendParameters$_constructor_to_value_mode_bounce_body ((int, slice, int, int, cell, cell, cell)) $SendParameters$_constructor_to_value_mode_bounce_body(slice to, int value, int mode, int bounce, cell body) inline; -;; $TokenNotification$_constructor_queryId_amount_from_forward_payload -((int, int, slice, slice)) $TokenNotification$_constructor_queryId_amount_from_forward_payload(int queryId, int amount, slice from, slice forward_payload) inline; +;; $TokenNotification$_constructor_query_id_amount_from_forward_payload +((int, int, slice, slice)) $TokenNotification$_constructor_query_id_amount_from_forward_payload(int query_id, int amount, slice from, slice forward_payload) inline; ;; $SendParameters$_constructor_to_value_bounce_body_mode ((int, slice, int, int, cell, cell, cell)) $SendParameters$_constructor_to_value_bounce_body_mode(slice to, int value, int bounce, cell body, int mode) inline; -;; $TokenExcesses$_constructor_queryId -((int)) $TokenExcesses$_constructor_queryId(int queryId) inline; +;; $TokenExcesses$_constructor_query_id +((int)) $TokenExcesses$_constructor_query_id(int query_id) inline; + +;; $TokenBurnNotification$_constructor_query_id_amount_response_destination +((int, int, slice)) $TokenBurnNotification$_constructor_query_id_amount_response_destination(int query_id, int amount, slice response_destination) inline; -;; $TokenBurnNotification$_constructor_queryId_amount_response_destination -((int, int, slice)) $TokenBurnNotification$_constructor_queryId_amount_response_destination(int queryId, int amount, slice response_destination) inline; +;; $TakeWalletAddress$_constructor_query_id_wallet_address_owner_address +((int, slice, slice)) $TakeWalletAddress$_constructor_query_id_wallet_address_owner_address(int query_id, slice wallet_address, slice owner_address) inline; diff --git a/sources/output/SampleJetton_JettonDefaultWallet.md b/sources/output/SampleJetton_JettonDefaultWallet.md index efc62ab..0b717e6 100644 --- a/sources/output/SampleJetton_JettonDefaultWallet.md +++ b/sources/output/SampleJetton_JettonDefaultWallet.md @@ -1,9 +1,9 @@ # TACT Compilation Report Contract: JettonDefaultWallet -BOC Size: 2025 bytes +BOC Size: 2311 bytes # Types -Total Types: 15 +Total Types: 17 ## StateInit TLB: `_ code:^cell data:^cell = StateInit` @@ -26,41 +26,49 @@ TLB: `change_owner_ok#327b2b4a queryId:uint64 newOwner:address = ChangeOwnerOk` Signature: `ChangeOwnerOk{queryId:uint64,newOwner:address}` ## JettonData -TLB: `_ totalSupply:int257 mintable:bool owner:address content:^cell walletCode:^cell = JettonData` -Signature: `JettonData{totalSupply:int257,mintable:bool,owner:address,content:^cell,walletCode:^cell}` +TLB: `_ total_supply:int257 mintable:bool owner:address content:^cell wallet_code:^cell = JettonData` +Signature: `JettonData{total_supply:int257,mintable:bool,owner:address,content:^cell,wallet_code:^cell}` ## JettonWalletData -TLB: `_ balance:int257 owner:address master:address walletCode:^cell = JettonWalletData` -Signature: `JettonWalletData{balance:int257,owner:address,master:address,walletCode:^cell}` +TLB: `_ balance:int257 owner:address master:address wallet_code:^cell = JettonWalletData` +Signature: `JettonWalletData{balance:int257,owner:address,master:address,wallet_code:^cell}` ## TokenTransfer -TLB: `token_transfer#0f8a7ea5 queryId:uint64 amount:coins destination:address response_destination:address custom_payload:Maybe ^cell forward_ton_amount:coins forward_payload:remainder = TokenTransfer` -Signature: `TokenTransfer{queryId:uint64,amount:coins,destination:address,response_destination:address,custom_payload:Maybe ^cell,forward_ton_amount:coins,forward_payload:remainder}` +TLB: `token_transfer#0f8a7ea5 query_id:uint64 amount:coins destination:address response_destination:address custom_payload:Maybe ^cell forward_ton_amount:coins forward_payload:remainder = TokenTransfer` +Signature: `TokenTransfer{query_id:uint64,amount:coins,destination:address,response_destination:address,custom_payload:Maybe ^cell,forward_ton_amount:coins,forward_payload:remainder}` ## TokenTransferInternal -TLB: `token_transfer_internal#178d4519 queryId:uint64 amount:coins from:address response_destination:address forward_ton_amount:coins forward_payload:remainder = TokenTransferInternal` -Signature: `TokenTransferInternal{queryId:uint64,amount:coins,from:address,response_destination:address,forward_ton_amount:coins,forward_payload:remainder}` +TLB: `token_transfer_internal#178d4519 query_id:uint64 amount:coins from:address response_destination:address forward_ton_amount:coins forward_payload:remainder = TokenTransferInternal` +Signature: `TokenTransferInternal{query_id:uint64,amount:coins,from:address,response_destination:address,forward_ton_amount:coins,forward_payload:remainder}` ## TokenNotification -TLB: `token_notification#7362d09c queryId:uint64 amount:coins from:address forward_payload:remainder = TokenNotification` -Signature: `TokenNotification{queryId:uint64,amount:coins,from:address,forward_payload:remainder}` +TLB: `token_notification#7362d09c query_id:uint64 amount:coins from:address forward_payload:remainder = TokenNotification` +Signature: `TokenNotification{query_id:uint64,amount:coins,from:address,forward_payload:remainder}` ## TokenBurn -TLB: `token_burn#595f07bc queryId:uint64 amount:coins response_destination:address custom_payload:Maybe ^cell = TokenBurn` -Signature: `TokenBurn{queryId:uint64,amount:coins,response_destination:address,custom_payload:Maybe ^cell}` +TLB: `token_burn#595f07bc query_id:uint64 amount:coins response_destination:address custom_payload:Maybe ^cell = TokenBurn` +Signature: `TokenBurn{query_id:uint64,amount:coins,response_destination:address,custom_payload:Maybe ^cell}` ## TokenBurnNotification -TLB: `token_burn_notification#7bdd97de queryId:uint64 amount:coins response_destination:address = TokenBurnNotification` -Signature: `TokenBurnNotification{queryId:uint64,amount:coins,response_destination:address}` +TLB: `token_burn_notification#7bdd97de query_id:uint64 amount:coins response_destination:address = TokenBurnNotification` +Signature: `TokenBurnNotification{query_id:uint64,amount:coins,response_destination:address}` ## TokenExcesses -TLB: `token_excesses#d53276db queryId:uint64 = TokenExcesses` -Signature: `TokenExcesses{queryId:uint64}` +TLB: `token_excesses#d53276db query_id:uint64 = TokenExcesses` +Signature: `TokenExcesses{query_id:uint64}` ## TokenUpdateContent TLB: `token_update_content#af1ca26a content:^cell = TokenUpdateContent` Signature: `TokenUpdateContent{content:^cell}` +## ProvideWalletAddress +TLB: `provide_wallet_address#2c76b973 query_id:uint64 owner_address:address include_address:bool = ProvideWalletAddress` +Signature: `ProvideWalletAddress{query_id:uint64,owner_address:address,include_address:bool}` + +## TakeWalletAddress +TLB: `take_wallet_address#d1735400 query_id:uint64 wallet_address:address owner_address:Maybe address = TakeWalletAddress` +Signature: `TakeWalletAddress{query_id:uint64,wallet_address:address,owner_address:Maybe address}` + ## Mint TLB: `mint#fc708bd2 amount:int257 receiver:address = Mint` Signature: `Mint{amount:int257,receiver:address}` @@ -68,7 +76,7 @@ Signature: `Mint{amount:int257,receiver:address}` # Get Methods Total Get Methods: 2 -## msgValue +## msg_value Argument: value ## get_wallet_data @@ -98,11 +106,13 @@ Argument: value 135: Code of a contract was not found 136: Invalid address 137: Masterchain support is not enabled for this contract -3734: Not Owner +3688: Not mintable 4159: Invalid value!! 4429: Invalid sender -6898: The total supply will be overlapping. +12241: Max supply exceeded +14534: Not owner 18668: Can't Mint Anymore +23951: Insufficient gas 42708: Invalid sender! 43422: Invalid value - Burn 62972: Invalid balance \ No newline at end of file diff --git a/sources/output/SampleJetton_JettonDefaultWallet.pkg b/sources/output/SampleJetton_JettonDefaultWallet.pkg index 067712a..03c4c52 100644 --- a/sources/output/SampleJetton_JettonDefaultWallet.pkg +++ b/sources/output/SampleJetton_JettonDefaultWallet.pkg @@ -1 +1 @@ -{"name":"JettonDefaultWallet","code":"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","abi":"{\"name\":\"JettonDefaultWallet\",\"types\":[{\"name\":\"StateInit\",\"header\":null,\"fields\":[{\"name\":\"code\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":false}},{\"name\":\"data\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":false}}]},{\"name\":\"Context\",\"header\":null,\"fields\":[{\"name\":\"bounced\",\"type\":{\"kind\":\"simple\",\"type\":\"bool\",\"optional\":false}},{\"name\":\"sender\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"value\",\"type\":{\"kind\":\"simple\",\"type\":\"int\",\"optional\":false,\"format\":257}},{\"name\":\"raw\",\"type\":{\"kind\":\"simple\",\"type\":\"slice\",\"optional\":false}}]},{\"name\":\"SendParameters\",\"header\":null,\"fields\":[{\"name\":\"bounce\",\"type\":{\"kind\":\"simple\",\"type\":\"bool\",\"optional\":false}},{\"name\":\"to\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"value\",\"type\":{\"kind\":\"simple\",\"type\":\"int\",\"optional\":false,\"format\":257}},{\"name\":\"mode\",\"type\":{\"kind\":\"simple\",\"type\":\"int\",\"optional\":false,\"format\":257}},{\"name\":\"body\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":true}},{\"name\":\"code\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":true}},{\"name\":\"data\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":true}}]},{\"name\":\"ChangeOwner\",\"header\":2174598809,\"fields\":[{\"name\":\"queryId\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}},{\"name\":\"newOwner\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}}]},{\"name\":\"ChangeOwnerOk\",\"header\":846932810,\"fields\":[{\"name\":\"queryId\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}},{\"name\":\"newOwner\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}}]},{\"name\":\"JettonData\",\"header\":null,\"fields\":[{\"name\":\"totalSupply\",\"type\":{\"kind\":\"simple\",\"type\":\"int\",\"optional\":false,\"format\":257}},{\"name\":\"mintable\",\"type\":{\"kind\":\"simple\",\"type\":\"bool\",\"optional\":false}},{\"name\":\"owner\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"content\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":false}},{\"name\":\"walletCode\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":false}}]},{\"name\":\"JettonWalletData\",\"header\":null,\"fields\":[{\"name\":\"balance\",\"type\":{\"kind\":\"simple\",\"type\":\"int\",\"optional\":false,\"format\":257}},{\"name\":\"owner\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"master\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"walletCode\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":false}}]},{\"name\":\"TokenTransfer\",\"header\":260734629,\"fields\":[{\"name\":\"queryId\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}},{\"name\":\"amount\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":\"coins\"}},{\"name\":\"destination\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"response_destination\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"custom_payload\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":true}},{\"name\":\"forward_ton_amount\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":\"coins\"}},{\"name\":\"forward_payload\",\"type\":{\"kind\":\"simple\",\"type\":\"slice\",\"optional\":false,\"format\":\"remainder\"}}]},{\"name\":\"TokenTransferInternal\",\"header\":395134233,\"fields\":[{\"name\":\"queryId\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}},{\"name\":\"amount\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":\"coins\"}},{\"name\":\"from\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"response_destination\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"forward_ton_amount\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":\"coins\"}},{\"name\":\"forward_payload\",\"type\":{\"kind\":\"simple\",\"type\":\"slice\",\"optional\":false,\"format\":\"remainder\"}}]},{\"name\":\"TokenNotification\",\"header\":1935855772,\"fields\":[{\"name\":\"queryId\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}},{\"name\":\"amount\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":\"coins\"}},{\"name\":\"from\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"forward_payload\",\"type\":{\"kind\":\"simple\",\"type\":\"slice\",\"optional\":false,\"format\":\"remainder\"}}]},{\"name\":\"TokenBurn\",\"header\":1499400124,\"fields\":[{\"name\":\"queryId\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}},{\"name\":\"amount\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":\"coins\"}},{\"name\":\"response_destination\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"custom_payload\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":true}}]},{\"name\":\"TokenBurnNotification\",\"header\":2078119902,\"fields\":[{\"name\":\"queryId\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}},{\"name\":\"amount\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":\"coins\"}},{\"name\":\"response_destination\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}}]},{\"name\":\"TokenExcesses\",\"header\":3576854235,\"fields\":[{\"name\":\"queryId\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}}]},{\"name\":\"TokenUpdateContent\",\"header\":2937889386,\"fields\":[{\"name\":\"content\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":false}}]},{\"name\":\"Mint\",\"header\":4235234258,\"fields\":[{\"name\":\"amount\",\"type\":{\"kind\":\"simple\",\"type\":\"int\",\"optional\":false,\"format\":257}},{\"name\":\"receiver\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}}]}],\"receivers\":[{\"receiver\":\"internal\",\"message\":{\"kind\":\"typed\",\"type\":\"TokenTransfer\"}},{\"receiver\":\"internal\",\"message\":{\"kind\":\"typed\",\"type\":\"TokenTransferInternal\"}},{\"receiver\":\"internal\",\"message\":{\"kind\":\"typed\",\"type\":\"TokenBurn\"}}],\"getters\":[{\"name\":\"msgValue\",\"arguments\":[{\"name\":\"value\",\"type\":{\"kind\":\"simple\",\"type\":\"int\",\"optional\":false,\"format\":257}}],\"returnType\":{\"kind\":\"simple\",\"type\":\"int\",\"optional\":false,\"format\":257}},{\"name\":\"get_wallet_data\",\"arguments\":[],\"returnType\":{\"kind\":\"simple\",\"type\":\"JettonWalletData\",\"optional\":false}}],\"errors\":{\"2\":{\"message\":\"Stack undeflow\"},\"3\":{\"message\":\"Stack overflow\"},\"4\":{\"message\":\"Integer overflow\"},\"5\":{\"message\":\"Integer out of expected range\"},\"6\":{\"message\":\"Invalid opcode\"},\"7\":{\"message\":\"Type check error\"},\"8\":{\"message\":\"Cell overflow\"},\"9\":{\"message\":\"Cell underflow\"},\"10\":{\"message\":\"Dictionary error\"},\"13\":{\"message\":\"Out of gas error\"},\"32\":{\"message\":\"Method ID not found\"},\"34\":{\"message\":\"Action is invalid or not supported\"},\"37\":{\"message\":\"Not enough TON\"},\"38\":{\"message\":\"Not enough extra-currencies\"},\"128\":{\"message\":\"Null reference exception\"},\"129\":{\"message\":\"Invalid serialization prefix\"},\"130\":{\"message\":\"Invalid incoming message\"},\"131\":{\"message\":\"Constraints error\"},\"132\":{\"message\":\"Access denied\"},\"133\":{\"message\":\"Contract stopped\"},\"134\":{\"message\":\"Invalid argument\"},\"135\":{\"message\":\"Code of a contract was not found\"},\"136\":{\"message\":\"Invalid address\"},\"137\":{\"message\":\"Masterchain support is not enabled for this contract\"},\"3734\":{\"message\":\"Not Owner\"},\"4159\":{\"message\":\"Invalid value!!\"},\"4429\":{\"message\":\"Invalid sender\"},\"6898\":{\"message\":\"The total supply will be overlapping.\"},\"18668\":{\"message\":\"Can't Mint Anymore\"},\"42708\":{\"message\":\"Invalid sender!\"},\"43422\":{\"message\":\"Invalid value - Burn\"},\"62972\":{\"message\":\"Invalid balance\"}},\"interfaces\":[\"org.ton.introspection.v0\",\"org.ton.abi.ipfs.v0\",\"org.ton.deploy.lazy.v0\",\"org.ton.chain.workchain.v0\",\"org.ton.jetton.wallet\"]}","init":{"kind":"direct","args":[{"name":"master","type":{"kind":"simple","type":"address","optional":false}},{"name":"owner","type":{"kind":"simple","type":"address","optional":false}}],"prefix":{"bits":1,"value":0},"deployment":{"kind":"system-cell","system":"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"}},"sources":{"sources/message.tact":"c3RydWN0IEpldHRvbkRhdGEgewogICAgdG90YWxTdXBwbHk6IEludDsKICAgIG1pbnRhYmxlOiBCb29sOwogICAgb3duZXI6IEFkZHJlc3M7CiAgICBjb250ZW50OiBDZWxsOwogICAgd2FsbGV0Q29kZTogQ2VsbDsKfQoKc3RydWN0IEpldHRvbldhbGxldERhdGEgewogICAgYmFsYW5jZTogSW50OwogICAgb3duZXI6IEFkZHJlc3M7CiAgICBtYXN0ZXI6IEFkZHJlc3M7CiAgICB3YWxsZXRDb2RlOiBDZWxsOwp9CgptZXNzYWdlKDB4ZjhhN2VhNSkgVG9rZW5UcmFuc2ZlciB7CiAgICBxdWVyeUlkOiBJbnQgYXMgdWludDY0OwogICAgYW1vdW50OiBJbnQgYXMgY29pbnM7CiAgICBkZXN0aW5hdGlvbjogQWRkcmVzczsKICAgIHJlc3BvbnNlX2Rlc3RpbmF0aW9uOiBBZGRyZXNzOwogICAgY3VzdG9tX3BheWxvYWQ6IENlbGw/OwogICAgZm9yd2FyZF90b25fYW1vdW50OiBJbnQgYXMgY29pbnM7CiAgICBmb3J3YXJkX3BheWxvYWQ6IFNsaWNlIGFzIHJlbWFpbmluZzsgLy8gQ29tbWVudCBUZXh0IG1lc3NhZ2Ugd2hlbiBUcmFuc2ZlciB0aGUgamV0dG9uCn0KCm1lc3NhZ2UoMHgxNzhkNDUxOSkgVG9rZW5UcmFuc2ZlckludGVybmFsIHsKICAgIHF1ZXJ5SWQ6IEludCBhcyB1aW50NjQ7CiAgICBhbW91bnQ6IEludCBhcyBjb2luczsKICAgIGZyb206IEFkZHJlc3M7CiAgICByZXNwb25zZV9kZXN0aW5hdGlvbjogQWRkcmVzczsKICAgIGZvcndhcmRfdG9uX2Ftb3VudDogSW50IGFzIGNvaW5zOwogICAgZm9yd2FyZF9wYXlsb2FkOiBTbGljZSBhcyByZW1haW5pbmc7IC8vIENvbW1lbnQgVGV4dCBtZXNzYWdlIHdoZW4gVHJhbnNmZXIgdGhlIGpldHRvbgp9CgptZXNzYWdlKDB4NzM2MmQwOWMpIFRva2VuTm90aWZpY2F0aW9uIHsKICAgIHF1ZXJ5SWQ6IEludCBhcyB1aW50NjQ7CiAgICBhbW91bnQ6IEludCBhcyBjb2luczsKICAgIGZyb206IEFkZHJlc3M7CiAgICBmb3J3YXJkX3BheWxvYWQ6IFNsaWNlIGFzIHJlbWFpbmluZzsgLy8gQ29tbWVudCBUZXh0IG1lc3NhZ2Ugd2hlbiBUcmFuc2ZlciB0aGUgamV0dG9uIAp9CgptZXNzYWdlKDB4NTk1ZjA3YmMpIFRva2VuQnVybiB7CiAgICBxdWVyeUlkOiBJbnQgYXMgdWludDY0OwogICAgYW1vdW50OiBJbnQgYXMgY29pbnM7CiAgICByZXNwb25zZV9kZXN0aW5hdGlvbjogQWRkcmVzczsKICAgIGN1c3RvbV9wYXlsb2FkOiBDZWxsPzsKfQoKbWVzc2FnZSgweDdiZGQ5N2RlKSBUb2tlbkJ1cm5Ob3RpZmljYXRpb24gewogICAgcXVlcnlJZDogSW50IGFzIHVpbnQ2NDsKICAgIGFtb3VudDogSW50IGFzIGNvaW5zOwogICAgcmVzcG9uc2VfZGVzdGluYXRpb246IEFkZHJlc3M7Cn0KCm1lc3NhZ2UoMHhkNTMyNzZkYikgVG9rZW5FeGNlc3NlcyB7CiAgICBxdWVyeUlkOiBJbnQgYXMgdWludDY0Owp9CgptZXNzYWdlIFRva2VuVXBkYXRlQ29udGVudCB7CiAgICBjb250ZW50OiBDZWxsOwp9Cgo=","sources/contract.tact":"aW1wb3J0ICJAc3RkbGliL293bmFibGUiOwppbXBvcnQgIi4vbWVzc2FnZSI7CgptZXNzYWdlIE1pbnQgewogICAgYW1vdW50OiBJbnQ7CiAgICByZWNlaXZlcjogQWRkcmVzczsKfQoKY29udHJhY3QgU2FtcGxlSmV0dG9uIHdpdGggSmV0dG9uIHsKICAgIHRvdGFsU3VwcGx5OiBJbnQgYXMgY29pbnM7CiAgICBvd25lcjogQWRkcmVzczsKICAgIGNvbnRlbnQ6IENlbGw7CiAgICBtaW50YWJsZTogQm9vbDsKCiAgICBtYXhTdXBwbHk6IEludCBhcyBjb2luczsgLy8gRXh0cmFjdCBwYXJhbWV0ZXIgd2Ugc2V0IGhlcmUuIFRoZSBKZXR0b24gU3RhbmRhcmRzIGRvZXNuJ3QgaGF2ZSB0aGlzIHBhcmFtZXRlci4KCiAgICBpbml0KG93bmVyOiBBZGRyZXNzLCBjb250ZW50OiBDZWxsLCBtYXhTdXBwbHk6IEludCkgewogICAgICAgIHNlbGYudG90YWxTdXBwbHkgPSAwOwogICAgICAgIHNlbGYub3duZXIgPSBvd25lcjsKICAgICAgICBzZWxmLm1pbnRhYmxlID0gdHJ1ZTsKICAgICAgICBzZWxmLmNvbnRlbnQgPSBjb250ZW50OwogICAgICAgIHNlbGYubWF4U3VwcGx5ID0gbWF4U3VwcGx5OwogICAgfQoKICAgIHJlY2VpdmUobXNnOiBNaW50KSB7CiAgICAgICAgbGV0IGN0eDogQ29udGV4dCA9IGNvbnRleHQoKTsKICAgICAgICByZXF1aXJlKGN0eC5zZW5kZXIgPT0gc2VsZi5vd25lciwgIk5vdCBPd25lciIpOwogICAgICAgIHJlcXVpcmUoc2VsZi5taW50YWJsZSwgIkNhbid0IE1pbnQgQW55bW9yZSIpOwogICAgICAgIHNlbGYubWludChtc2cucmVjZWl2ZXIsIG1zZy5hbW91bnQsIHNlbGYub3duZXIpOyAvLyAodG8sIGFtb3VudCwgcmVzcG9uc2VfZGVzdGluYXRpb24pCiAgICB9CgogICAgcmVjZWl2ZSgiTWludDogMTAwIikgeyAvLyBQdWJsaWMgTWludGluZwogICAgICAgIGxldCBjdHg6IENvbnRleHQgPSBjb250ZXh0KCk7CiAgICAgICAgcmVxdWlyZShzZWxmLm1pbnRhYmxlLCAiQ2FuJ3QgTWludCBBbnltb3JlIik7CiAgICAgICAgc2VsZi5taW50KGN0eC5zZW5kZXIsIDEwMCwgc2VsZi5vd25lcik7IC8vIPCflLQgCiAgICB9CgogICAgcmVjZWl2ZSgiT3duZXI6IE1pbnRDbG9zZSIpIHsKICAgICAgICBsZXQgY3R4OiBDb250ZXh0ID0gY29udGV4dCgpOwogICAgICAgIHJlcXVpcmUoY3R4LnNlbmRlciA9PSBzZWxmLm93bmVyLCAiTm90IE93bmVyIik7CiAgICAgICAgc2VsZi5taW50YWJsZSA9IGZhbHNlOwogICAgfQp9IAoKLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC8vCkBpbnRlcmZhY2UoIm9yZy50b24uamV0dG9uLm1hc3RlciIpCnRyYWl0IEpldHRvbiB3aXRoIE93bmFibGUgewoKICAgIHRvdGFsU3VwcGx5OiBJbnQ7IC8vIEFscmVhZHkgc2V0IGluaXRpYWxseSAKICAgIG1pbnRhYmxlOiBCb29sOwogICAgb3duZXI6IEFkZHJlc3M7CiAgICBjb250ZW50OiBDZWxsOwogICAgCiAgICBtYXhTdXBwbHk6IEludDsKCiAgICByZWNlaXZlKG1zZzogVG9rZW5VcGRhdGVDb250ZW50KSB7CiAgICAgICAgc2VsZi5yZXF1aXJlT3duZXIoKTsgICAgICAgICAgICAgICAgLy8gQWxsb3cgY2hhbmdpbmcgY29udGVudCBvbmx5IGJ5IG93bmVyCiAgICAgICAgc2VsZi5jb250ZW50ID0gbXNnLmNvbnRlbnQ7ICAgICAgICAgLy8gVXBkYXRlIGNvbnRlbnQKICAgIH0KCiAgICByZWNlaXZlKG1zZzogVG9rZW5CdXJuTm90aWZpY2F0aW9uKSB7CiAgICAgICAgc2VsZi5yZXF1aXJlU2VuZGVyQXNXYWxsZXRPd25lcihtc2cucmVzcG9uc2VfZGVzdGluYXRpb24pOyAgICAgICAvLyBDaGVjayB3YWxsZXQKICAgICAgICBzZWxmLnRvdGFsU3VwcGx5ID0gc2VsZi50b3RhbFN1cHBseSAtIG1zZy5hbW91bnQ7IC8vIFVwZGF0ZSBzdXBwbHkKICAgICAgICBpZiAobXNnLnJlc3BvbnNlX2Rlc3RpbmF0aW9uICE9IG51bGwpIHsgLy8gQ2FzaGJhY2sKICAgICAgICAgICAgc2VuZChTZW5kUGFyYW1ldGVyc3sKICAgICAgICAgICAgICAgIHRvOiBtc2cucmVzcG9uc2VfZGVzdGluYXRpb24sIAogICAgICAgICAgICAgICAgdmFsdWU6IDAsCiAgICAgICAgICAgICAgICBib3VuY2U6IGZhbHNlLAogICAgICAgICAgICAgICAgbW9kZTogU2VuZFJlbWFpbmluZ1ZhbHVlICsgU2VuZElnbm9yZUVycm9ycywKICAgICAgICAgICAgICAgIGJvZHk6IFRva2VuRXhjZXNzZXN7IHF1ZXJ5SWQ6IG1zZy5xdWVyeUlkIH0udG9DZWxsKCkKICAgICAgICAgICAgfSk7CiAgICAgICAgfQogICAgfQoKICAgIC8vIFByaXZhdGUgTWV0aG9kcyAvLyAKICAgIC8vIEB0byBUaGUgQWRkcmVzcyByZWNlaXZlIHRoZSBKZXR0b24gdG9rZW4gYWZ0ZXIgbWludGluZwogICAgLy8gQGFtb3VudCBUaGUgYW1vdW50IG9mIEpldHRvbiB0b2tlbiBiZWluZyBtaW50ZWQKICAgIC8vIEByZXNwb25zZV9kZXN0aW5hdGlvbiBUaGUgcHJldmlvdXMgb3duZXIgYWRkcmVzcwogICAgZnVuIG1pbnQodG86IEFkZHJlc3MsIGFtb3VudDogSW50LCByZXNwb25zZV9kZXN0aW5hdGlvbjogQWRkcmVzcykgewogICAgICAgIHJlcXVpcmUoc2VsZi50b3RhbFN1cHBseSArIGFtb3VudCA8PSBzZWxmLm1heFN1cHBseSwgIlRoZSB0b3RhbCBzdXBwbHkgd2lsbCBiZSBvdmVybGFwcGluZy4iKTsKICAgICAgICBzZWxmLnRvdGFsU3VwcGx5ID0gc2VsZi50b3RhbFN1cHBseSArIGFtb3VudDsgLy8gVXBkYXRlIHRvdGFsIHN1cHBseQoKICAgICAgICBsZXQgd2luaXQ6IFN0YXRlSW5pdCA9IHNlbGYuZ2V0SmV0dG9uV2FsbGV0SW5pdCh0byk7IC8vIENyZWF0ZSBtZXNzYWdlCiAgICAgICAgc2VuZChTZW5kUGFyYW1ldGVyc3sKICAgICAgICAgICAgdG86IGNvbnRyYWN0QWRkcmVzcyh3aW5pdCksIAogICAgICAgICAgICB2YWx1ZTogMCwgCiAgICAgICAgICAgIGJvdW5jZTogdHJ1ZSwKICAgICAgICAgICAgbW9kZTogU2VuZFJlbWFpbmluZ1ZhbHVlLAogICAgICAgICAgICBib2R5OiBUb2tlblRyYW5zZmVySW50ZXJuYWx7IAogICAgICAgICAgICAgICAgcXVlcnlJZDogMCwKICAgICAgICAgICAgICAgIGFtb3VudDogYW1vdW50LAogICAgICAgICAgICAgICAgZnJvbTogbXlBZGRyZXNzKCksCiAgICAgICAgICAgICAgICByZXNwb25zZV9kZXN0aW5hdGlvbjogcmVzcG9uc2VfZGVzdGluYXRpb24sCiAgICAgICAgICAgICAgICBmb3J3YXJkX3Rvbl9hbW91bnQ6IDAsCiAgICAgICAgICAgICAgICBmb3J3YXJkX3BheWxvYWQ6IGVtcHR5U2xpY2UoKQogICAgICAgICAgICB9LnRvQ2VsbCgpLAogICAgICAgICAgICBjb2RlOiB3aW5pdC5jb2RlLAogICAgICAgICAgICBkYXRhOiB3aW5pdC5kYXRhCiAgICAgICAgfSk7CiAgICB9CgogICAgZnVuIHJlcXVpcmVTZW5kZXJBc1dhbGxldE93bmVyKG93bmVyOiBBZGRyZXNzKSB7CiAgICAgICAgbGV0IGN0eDogQ29udGV4dCA9IGNvbnRleHQoKTsKICAgICAgICBsZXQgd2luaXQ6IFN0YXRlSW5pdCA9IHNlbGYuZ2V0SmV0dG9uV2FsbGV0SW5pdChvd25lcik7CiAgICAgICAgcmVxdWlyZShjb250cmFjdEFkZHJlc3Mod2luaXQpID09IGN0eC5zZW5kZXIsICJJbnZhbGlkIHNlbmRlciIpOwogICAgfQoKICAgIHZpcnR1YWwgZnVuIGdldEpldHRvbldhbGxldEluaXQoYWRkcmVzczogQWRkcmVzcyk6IFN0YXRlSW5pdCB7CiAgICAgICAgcmV0dXJuIGluaXRPZiBKZXR0b25EZWZhdWx0V2FsbGV0KG15QWRkcmVzcygpLCBhZGRyZXNzKTsKICAgIH0KCiAgICAvLyA9PT09PT0gR2V0IE1ldGhvZHMgPT09PT09IC8vCiAgICBnZXQgZnVuIGdldF9qZXR0b25fZGF0YSgpOiBKZXR0b25EYXRhIHsKICAgICAgICBsZXQgY29kZTogQ2VsbCA9IHNlbGYuZ2V0SmV0dG9uV2FsbGV0SW5pdChteUFkZHJlc3MoKSkuY29kZTsKICAgICAgICByZXR1cm4gSmV0dG9uRGF0YXsgCiAgICAgICAgICAgIHRvdGFsU3VwcGx5OiBzZWxmLnRvdGFsU3VwcGx5LCAKICAgICAgICAgICAgbWludGFibGU6IHNlbGYubWludGFibGUsIAogICAgICAgICAgICBvd25lcjogc2VsZi5vd25lciwgCiAgICAgICAgICAgIGNvbnRlbnQ6IHNlbGYuY29udGVudCwgCiAgICAgICAgICAgIHdhbGxldENvZGU6IGNvZGUKICAgICAgICB9OwogICAgfQoKICAgIGdldCBmdW4gZ2V0X3dhbGxldF9hZGRyZXNzKG93bmVyOiBBZGRyZXNzKTogQWRkcmVzcyB7CiAgICAgICAgbGV0IHdpbml0OiBTdGF0ZUluaXQgPSBzZWxmLmdldEpldHRvbldhbGxldEluaXQob3duZXIpOwogICAgICAgIHJldHVybiBjb250cmFjdEFkZHJlc3Mod2luaXQpOwogICAgfQp9CgovLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLy8KQGludGVyZmFjZSgib3JnLnRvbi5qZXR0b24ud2FsbGV0IikKY29udHJhY3QgSmV0dG9uRGVmYXVsdFdhbGxldCB7CiAgICBjb25zdCBtaW5Ub25zRm9yU3RvcmFnZTogSW50ID0gdG9uKCIwLjAxIik7CiAgICBjb25zdCBnYXNDb25zdW1wdGlvbjogSW50ID0gdG9uKCIwLjAxIik7CgogICAgYmFsYW5jZTogSW50OwogICAgb3duZXI6IEFkZHJlc3M7CiAgICBtYXN0ZXI6IEFkZHJlc3M7CgogICAgaW5pdChtYXN0ZXI6IEFkZHJlc3MsIG93bmVyOiBBZGRyZXNzKSB7CiAgICAgICAgc2VsZi5iYWxhbmNlID0gMDsKICAgICAgICBzZWxmLm93bmVyID0gb3duZXI7CiAgICAgICAgc2VsZi5tYXN0ZXIgPSBtYXN0ZXI7CiAgICB9CgogICAgcmVjZWl2ZShtc2c6IFRva2VuVHJhbnNmZXIpIHsgLy8gMHhmOGE3ZWE1CiAgICAgICAgbGV0IGN0eDogQ29udGV4dCA9IGNvbnRleHQoKTsgLy8gQ2hlY2sgc2VuZGVyCiAgICAgICAgcmVxdWlyZShjdHguc2VuZGVyID09IHNlbGYub3duZXIsICJJbnZhbGlkIHNlbmRlciIpOwoKICAgICAgICAvLyBHYXMgY2hlY2tzCiAgICAgICAgbGV0IGZ3ZEZlZTogSW50ID0gY3R4LnJlYWRGb3J3YXJkRmVlKCkgKyBjdHgucmVhZEZvcndhcmRGZWUoKTsgIAogICAgICAgIGxldCBmaW5hbDogSW50ID0gIDIgKiBzZWxmLmdhc0NvbnN1bXB0aW9uICsgc2VsZi5taW5Ub25zRm9yU3RvcmFnZSArIGZ3ZEZlZTsKICAgICAgICByZXF1aXJlKGN0eC52YWx1ZSA+IG1pbihmaW5hbCwgdG9uKCIwLjAxIikpLCAiSW52YWxpZCB2YWx1ZSEhIik7IAoKICAgICAgICAvLyBVcGRhdGUgYmFsYW5jZQogICAgICAgIHNlbGYuYmFsYW5jZSA9IHNlbGYuYmFsYW5jZSAtIG1zZy5hbW91bnQ7IAogICAgICAgIHJlcXVpcmUoc2VsZi5iYWxhbmNlID49IDAsICJJbnZhbGlkIGJhbGFuY2UiKTsKCiAgICAgICAgbGV0IGluaXQ6IFN0YXRlSW5pdCA9IGluaXRPZiBKZXR0b25EZWZhdWx0V2FsbGV0KHNlbGYubWFzdGVyLCBtc2cuZGVzdGluYXRpb24pOyAgCiAgICAgICAgbGV0IHdhbGxldEFkZHJlc3M6IEFkZHJlc3MgPSBjb250cmFjdEFkZHJlc3MoaW5pdCk7CiAgICAgICAgc2VuZChTZW5kUGFyYW1ldGVyc3sKICAgICAgICAgICAgICAgIHRvOiB3YWxsZXRBZGRyZXNzLCAKICAgICAgICAgICAgICAgIHZhbHVlOiAwLAogICAgICAgICAgICAgICAgbW9kZTogU2VuZFJlbWFpbmluZ1ZhbHVlLCAKICAgICAgICAgICAgICAgIGJvdW5jZTogdHJ1ZSwKICAgICAgICAgICAgICAgIGJvZHk6IFRva2VuVHJhbnNmZXJJbnRlcm5hbHsKICAgICAgICAgICAgICAgICAgICBxdWVyeUlkOiBtc2cucXVlcnlJZCwKICAgICAgICAgICAgICAgICAgICBhbW91bnQ6IG1zZy5hbW91bnQsCiAgICAgICAgICAgICAgICAgICAgZnJvbTogc2VsZi5vd25lciwKICAgICAgICAgICAgICAgICAgICByZXNwb25zZV9kZXN0aW5hdGlvbjogbXNnLnJlc3BvbnNlX2Rlc3RpbmF0aW9uLAogICAgICAgICAgICAgICAgICAgIGZvcndhcmRfdG9uX2Ftb3VudDogbXNnLmZvcndhcmRfdG9uX2Ftb3VudCwKICAgICAgICAgICAgICAgICAgICBmb3J3YXJkX3BheWxvYWQ6IG1zZy5mb3J3YXJkX3BheWxvYWQKICAgICAgICAgICAgICAgIH0udG9DZWxsKCksCiAgICAgICAgICAgICAgICBjb2RlOiBpbml0LmNvZGUsCiAgICAgICAgICAgICAgICBkYXRhOiBpbml0LmRhdGEKICAgICAgICAgICAgfSk7CiAgICB9CgogICAgcmVjZWl2ZShtc2c6IFRva2VuVHJhbnNmZXJJbnRlcm5hbCkgeyAvLyAweDE3OGQ0NTE5CiAgICAgICAgbGV0IGN0eDogQ29udGV4dCA9IGNvbnRleHQoKTsKCiAgICAgICAgaWYgKGN0eC5zZW5kZXIgIT0gc2VsZi5tYXN0ZXIpIHsKICAgICAgICAgICAgbGV0IHNpbml0OiBTdGF0ZUluaXQgPSBpbml0T2YgSmV0dG9uRGVmYXVsdFdhbGxldChzZWxmLm1hc3RlciwgbXNnLmZyb20pOwogICAgICAgICAgICByZXF1aXJlKGNvbnRyYWN0QWRkcmVzcyhzaW5pdCkgPT0gY3R4LnNlbmRlciwgIkludmFsaWQgc2VuZGVyISIpOwogICAgICAgIH0KCiAgICAgICAgLy8gVXBkYXRlIGJhbGFuY2UKICAgICAgICBzZWxmLmJhbGFuY2UgPSBzZWxmLmJhbGFuY2UgKyBtc2cuYW1vdW50OwogICAgICAgIHJlcXVpcmUoc2VsZi5iYWxhbmNlID49IDAsICJJbnZhbGlkIGJhbGFuY2UiKTsgCiAgICAgICAgCiAgICAgICAgLy8gR2V0IHZhbHVlIGZvciBnYXMKICAgICAgICBsZXQgbXNnVmFsdWU6IEludCA9IHNlbGYubXNnVmFsdWUoY3R4LnZhbHVlKTsgIAogICAgICAgIGxldCBmd2RGZWU6IEludCA9IGN0eC5yZWFkRm9yd2FyZEZlZSgpOwogICAgICAgIG1zZ1ZhbHVlID0gbXNnVmFsdWUgLSBtc2cuZm9yd2FyZF90b25fYW1vdW50IC0gZndkRmVlOwogICAgICAgIAogICAgICAgICAvLyAweDczNjJkMDljIC0gbm90aWZ5IHRoZSBuZXcgb3duZXIgb2YgSmV0dG9uVG9rZW4gdGhhdCB0aGUgdHJhbnNmZXIgaXMgY29tcGxldGUKICAgICAgICBpZiAobXNnLmZvcndhcmRfdG9uX2Ftb3VudCA+IDApIHsgCiAgICAgICAgICAgIHNlbmQoU2VuZFBhcmFtZXRlcnN7CiAgICAgICAgICAgICAgICB0bzogc2VsZi5vd25lciwKICAgICAgICAgICAgICAgIHZhbHVlOiBtc2cuZm9yd2FyZF90b25fYW1vdW50LAogICAgICAgICAgICAgICAgbW9kZTogU2VuZFBheUdhc1NlcGFyYXRlbHkgKyBTZW5kSWdub3JlRXJyb3JzLAogICAgICAgICAgICAgICAgYm91bmNlOiBmYWxzZSwKICAgICAgICAgICAgICAgIGJvZHk6IFRva2VuTm90aWZpY2F0aW9uIHsKICAgICAgICAgICAgICAgICAgICBxdWVyeUlkOiBtc2cucXVlcnlJZCwKICAgICAgICAgICAgICAgICAgICBhbW91bnQ6IG1zZy5hbW91bnQsCiAgICAgICAgICAgICAgICAgICAgZnJvbTogbXNnLmZyb20sCiAgICAgICAgICAgICAgICAgICAgZm9yd2FyZF9wYXlsb2FkOiBtc2cuZm9yd2FyZF9wYXlsb2FkCiAgICAgICAgICAgICAgICB9LnRvQ2VsbCgpCiAgICAgICAgICAgIH0pOwogICAgICAgIH0KCiAgICAgICAgLy8gMHhkNTMyNzZkYiAtLSBDYXNoYmFjayB0byB0aGUgb3JpZ2luYWwgU2VuZGVyCiAgICAgICAgaWYgKG1zZy5yZXNwb25zZV9kZXN0aW5hdGlvbiAhPSBudWxsKSB7IAogICAgICAgICAgICBzZW5kKFNlbmRQYXJhbWV0ZXJzIHsKICAgICAgICAgICAgICAgIHRvOiBtc2cucmVzcG9uc2VfZGVzdGluYXRpb24sIAogICAgICAgICAgICAgICAgdmFsdWU6IG1zZ1ZhbHVlLCAgCiAgICAgICAgICAgICAgICBib3VuY2U6IGZhbHNlLAogICAgICAgICAgICAgICAgYm9keTogVG9rZW5FeGNlc3NlcyB7IAogICAgICAgICAgICAgICAgICAgIHF1ZXJ5SWQ6IG1zZy5xdWVyeUlkCiAgICAgICAgICAgICAgICB9LnRvQ2VsbCgpLAogICAgICAgICAgICAgICAgbW9kZTogU2VuZElnbm9yZUVycm9ycwogICAgICAgICAgICB9KTsKICAgICAgICB9CiAgICB9CgogICAgcmVjZWl2ZShtc2c6IFRva2VuQnVybikgewogICAgICAgIGxldCBjdHg6IENvbnRleHQgPSBjb250ZXh0KCk7CiAgICAgICAgcmVxdWlyZShjdHguc2VuZGVyID09IHNlbGYub3duZXIsICJJbnZhbGlkIHNlbmRlciIpOyAgLy8gQ2hlY2sgc2VuZGVyCgogICAgICAgIHNlbGYuYmFsYW5jZSA9IHNlbGYuYmFsYW5jZSAtIG1zZy5hbW91bnQ7IC8vIFVwZGF0ZSBiYWxhbmNlCiAgICAgICAgcmVxdWlyZShzZWxmLmJhbGFuY2UgPj0gMCwgIkludmFsaWQgYmFsYW5jZSIpOwoKICAgICAgICBsZXQgZndkRmVlOiBJbnQgPSBjdHgucmVhZEZvcndhcmRGZWUoKTsgLy8gR2FzIGNoZWNrcwogICAgICAgIHJlcXVpcmUoY3R4LnZhbHVlID4gZndkRmVlICsgMiAqIHNlbGYuZ2FzQ29uc3VtcHRpb24gKyBzZWxmLm1pblRvbnNGb3JTdG9yYWdlLCAiSW52YWxpZCB2YWx1ZSAtIEJ1cm4iKTsKCiAgICAgICAgLy8gQnVybiB0b2tlbnMKICAgICAgICBzZW5kKFNlbmRQYXJhbWV0ZXJzeyAgCiAgICAgICAgICAgIHRvOiBzZWxmLm1hc3RlciwKICAgICAgICAgICAgdmFsdWU6IDAsCiAgICAgICAgICAgIG1vZGU6IFNlbmRSZW1haW5pbmdWYWx1ZSwKICAgICAgICAgICAgYm91bmNlOiB0cnVlLAogICAgICAgICAgICBib2R5OiBUb2tlbkJ1cm5Ob3RpZmljYXRpb257CiAgICAgICAgICAgICAgICBxdWVyeUlkOiBtc2cucXVlcnlJZCwKICAgICAgICAgICAgICAgIGFtb3VudDogbXNnLmFtb3VudCwKICAgICAgICAgICAgICAgIHJlc3BvbnNlX2Rlc3RpbmF0aW9uOiBzZWxmLm93bmVyCiAgICAgICAgICAgIH0udG9DZWxsKCkKICAgICAgICB9KTsKICAgIH0KCiAgICBnZXQgZnVuIG1zZ1ZhbHVlKHZhbHVlOiBJbnQpOiBJbnQgewogICAgICAgIGxldCBtc2dWYWx1ZTogSW50ID0gdmFsdWU7CiAgICAgICAgbGV0IHRvbkJhbGFuY2VCZWZvcmVNc2c6IEludCA9IG15QmFsYW5jZSgpIC0gbXNnVmFsdWU7CiAgICAgICAgbGV0IHN0b3JhZ2VGZWU6IEludCA9IHNlbGYubWluVG9uc0ZvclN0b3JhZ2UgLSBtaW4odG9uQmFsYW5jZUJlZm9yZU1zZywgc2VsZi5taW5Ub25zRm9yU3RvcmFnZSk7CiAgICAgICAgbXNnVmFsdWUgPSBtc2dWYWx1ZSAtIChzdG9yYWdlRmVlICsgc2VsZi5nYXNDb25zdW1wdGlvbik7CiAgICAgICAgcmV0dXJuIG1zZ1ZhbHVlOwogICAgfQoKICAgIGJvdW5jZWQoc3JjOiBib3VuY2VkPFRva2VuVHJhbnNmZXJJbnRlcm5hbD4pIHsKICAgICAgICBzZWxmLmJhbGFuY2UgPSBzZWxmLmJhbGFuY2UgKyBzcmMuYW1vdW50OwogICAgfQoKICAgIGJvdW5jZWQoc3JjOiBib3VuY2VkPFRva2VuQnVybk5vdGlmaWNhdGlvbj4pIHsKICAgICAgICBzZWxmLmJhbGFuY2UgPSBzZWxmLmJhbGFuY2UgKyBzcmMuYW1vdW50OwogICAgfQoKICAgIGdldCBmdW4gZ2V0X3dhbGxldF9kYXRhKCk6IEpldHRvbldhbGxldERhdGEgewogICAgICAgIHJldHVybiBKZXR0b25XYWxsZXREYXRhewogICAgICAgICAgICBiYWxhbmNlOiBzZWxmLmJhbGFuY2UsCiAgICAgICAgICAgIG93bmVyOiBzZWxmLm93bmVyLAogICAgICAgICAgICBtYXN0ZXI6IHNlbGYubWFzdGVyLAogICAgICAgICAgICB3YWxsZXRDb2RlOiAoaW5pdE9mIEpldHRvbkRlZmF1bHRXYWxsZXQoc2VsZi5tYXN0ZXIsIHNlbGYub3duZXIpKS5jb2RlCiAgICAgICAgfTsKICAgIH0KICAgIAogICAgLy8gYm91bmNlZChtc2c6IFNsaWNlKSB7CiAgICAvLyAgICAgLy8gUGFyc2UgYm91bmNlZCBtZXNzYWdlCiAgICAvLyAgICAgbXNnLnNraXBCaXRzKDMyKTsgLy8gMHhGRkZGRkZGRiAKICAgIC8vICAgICBsZXQgb3A6IEludCA9IG1zZy5sb2FkVWludCgzMik7CiAgICAvLyAgICAgbGV0IHF1ZXJ5SWQ6IEludCA9IG1zZy5sb2FkVWludCg2NCk7CiAgICAvLyAgICAgbGV0IGpldHRvbkFtb3VudDogSW50ID0gbXNnLmxvYWRDb2lucygpOwogICAgLy8gICAgIHJlcXVpcmUob3AgPT0gMHgxNzhkNDUxOSB8fCBvcCA9PSAweDdiZGQ5N2RlLCAiSW52YWxpZCBib3VuY2VkIG1lc3NhZ2UiKTsKICAgIC8vICAgICBzZWxmLmJhbGFuY2UgPSBzZWxmLmJhbGFuY2UgKyBqZXR0b25BbW91bnQ7IC8vIFVwZGF0ZSBiYWxhbmNlCiAgICAvLyB9Cn0="},"compiler":{"name":"tact","version":"1.1.0","parameters":"{\"entrypoint\":\"./sources/contract.tact\",\"options\":{}}"}} \ No newline at end of file +{"name":"JettonDefaultWallet","code":"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","abi":"{\"name\":\"JettonDefaultWallet\",\"types\":[{\"name\":\"StateInit\",\"header\":null,\"fields\":[{\"name\":\"code\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":false}},{\"name\":\"data\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":false}}]},{\"name\":\"Context\",\"header\":null,\"fields\":[{\"name\":\"bounced\",\"type\":{\"kind\":\"simple\",\"type\":\"bool\",\"optional\":false}},{\"name\":\"sender\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"value\",\"type\":{\"kind\":\"simple\",\"type\":\"int\",\"optional\":false,\"format\":257}},{\"name\":\"raw\",\"type\":{\"kind\":\"simple\",\"type\":\"slice\",\"optional\":false}}]},{\"name\":\"SendParameters\",\"header\":null,\"fields\":[{\"name\":\"bounce\",\"type\":{\"kind\":\"simple\",\"type\":\"bool\",\"optional\":false}},{\"name\":\"to\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"value\",\"type\":{\"kind\":\"simple\",\"type\":\"int\",\"optional\":false,\"format\":257}},{\"name\":\"mode\",\"type\":{\"kind\":\"simple\",\"type\":\"int\",\"optional\":false,\"format\":257}},{\"name\":\"body\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":true}},{\"name\":\"code\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":true}},{\"name\":\"data\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":true}}]},{\"name\":\"ChangeOwner\",\"header\":2174598809,\"fields\":[{\"name\":\"queryId\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}},{\"name\":\"newOwner\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}}]},{\"name\":\"ChangeOwnerOk\",\"header\":846932810,\"fields\":[{\"name\":\"queryId\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}},{\"name\":\"newOwner\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}}]},{\"name\":\"JettonData\",\"header\":null,\"fields\":[{\"name\":\"total_supply\",\"type\":{\"kind\":\"simple\",\"type\":\"int\",\"optional\":false,\"format\":257}},{\"name\":\"mintable\",\"type\":{\"kind\":\"simple\",\"type\":\"bool\",\"optional\":false}},{\"name\":\"owner\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"content\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":false}},{\"name\":\"wallet_code\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":false}}]},{\"name\":\"JettonWalletData\",\"header\":null,\"fields\":[{\"name\":\"balance\",\"type\":{\"kind\":\"simple\",\"type\":\"int\",\"optional\":false,\"format\":257}},{\"name\":\"owner\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"master\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"wallet_code\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":false}}]},{\"name\":\"TokenTransfer\",\"header\":260734629,\"fields\":[{\"name\":\"query_id\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}},{\"name\":\"amount\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":\"coins\"}},{\"name\":\"destination\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"response_destination\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"custom_payload\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":true}},{\"name\":\"forward_ton_amount\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":\"coins\"}},{\"name\":\"forward_payload\",\"type\":{\"kind\":\"simple\",\"type\":\"slice\",\"optional\":false,\"format\":\"remainder\"}}]},{\"name\":\"TokenTransferInternal\",\"header\":395134233,\"fields\":[{\"name\":\"query_id\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}},{\"name\":\"amount\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":\"coins\"}},{\"name\":\"from\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"response_destination\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"forward_ton_amount\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":\"coins\"}},{\"name\":\"forward_payload\",\"type\":{\"kind\":\"simple\",\"type\":\"slice\",\"optional\":false,\"format\":\"remainder\"}}]},{\"name\":\"TokenNotification\",\"header\":1935855772,\"fields\":[{\"name\":\"query_id\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}},{\"name\":\"amount\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":\"coins\"}},{\"name\":\"from\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"forward_payload\",\"type\":{\"kind\":\"simple\",\"type\":\"slice\",\"optional\":false,\"format\":\"remainder\"}}]},{\"name\":\"TokenBurn\",\"header\":1499400124,\"fields\":[{\"name\":\"query_id\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}},{\"name\":\"amount\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":\"coins\"}},{\"name\":\"response_destination\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"custom_payload\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":true}}]},{\"name\":\"TokenBurnNotification\",\"header\":2078119902,\"fields\":[{\"name\":\"query_id\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}},{\"name\":\"amount\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":\"coins\"}},{\"name\":\"response_destination\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}}]},{\"name\":\"TokenExcesses\",\"header\":3576854235,\"fields\":[{\"name\":\"query_id\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}}]},{\"name\":\"TokenUpdateContent\",\"header\":2937889386,\"fields\":[{\"name\":\"content\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":false}}]},{\"name\":\"ProvideWalletAddress\",\"header\":745978227,\"fields\":[{\"name\":\"query_id\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}},{\"name\":\"owner_address\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"include_address\",\"type\":{\"kind\":\"simple\",\"type\":\"bool\",\"optional\":false}}]},{\"name\":\"TakeWalletAddress\",\"header\":3513996288,\"fields\":[{\"name\":\"query_id\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}},{\"name\":\"wallet_address\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"owner_address\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":true}}]},{\"name\":\"Mint\",\"header\":4235234258,\"fields\":[{\"name\":\"amount\",\"type\":{\"kind\":\"simple\",\"type\":\"int\",\"optional\":false,\"format\":257}},{\"name\":\"receiver\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}}]}],\"receivers\":[{\"receiver\":\"internal\",\"message\":{\"kind\":\"typed\",\"type\":\"TokenTransfer\"}},{\"receiver\":\"internal\",\"message\":{\"kind\":\"typed\",\"type\":\"TokenTransferInternal\"}},{\"receiver\":\"internal\",\"message\":{\"kind\":\"typed\",\"type\":\"TokenBurn\"}},{\"receiver\":\"internal\",\"message\":{\"kind\":\"typed\",\"type\":\"ProvideWalletAddress\"}}],\"getters\":[{\"name\":\"msg_value\",\"arguments\":[{\"name\":\"value\",\"type\":{\"kind\":\"simple\",\"type\":\"int\",\"optional\":false,\"format\":257}}],\"returnType\":{\"kind\":\"simple\",\"type\":\"int\",\"optional\":false,\"format\":257}},{\"name\":\"get_wallet_data\",\"arguments\":[],\"returnType\":{\"kind\":\"simple\",\"type\":\"JettonWalletData\",\"optional\":false}}],\"errors\":{\"2\":{\"message\":\"Stack undeflow\"},\"3\":{\"message\":\"Stack overflow\"},\"4\":{\"message\":\"Integer overflow\"},\"5\":{\"message\":\"Integer out of expected range\"},\"6\":{\"message\":\"Invalid opcode\"},\"7\":{\"message\":\"Type check error\"},\"8\":{\"message\":\"Cell overflow\"},\"9\":{\"message\":\"Cell underflow\"},\"10\":{\"message\":\"Dictionary error\"},\"13\":{\"message\":\"Out of gas error\"},\"32\":{\"message\":\"Method ID not found\"},\"34\":{\"message\":\"Action is invalid or not supported\"},\"37\":{\"message\":\"Not enough TON\"},\"38\":{\"message\":\"Not enough extra-currencies\"},\"128\":{\"message\":\"Null reference exception\"},\"129\":{\"message\":\"Invalid serialization prefix\"},\"130\":{\"message\":\"Invalid incoming message\"},\"131\":{\"message\":\"Constraints error\"},\"132\":{\"message\":\"Access denied\"},\"133\":{\"message\":\"Contract stopped\"},\"134\":{\"message\":\"Invalid argument\"},\"135\":{\"message\":\"Code of a contract was not found\"},\"136\":{\"message\":\"Invalid address\"},\"137\":{\"message\":\"Masterchain support is not enabled for this contract\"},\"3688\":{\"message\":\"Not mintable\"},\"4159\":{\"message\":\"Invalid value!!\"},\"4429\":{\"message\":\"Invalid sender\"},\"12241\":{\"message\":\"Max supply exceeded\"},\"14534\":{\"message\":\"Not owner\"},\"18668\":{\"message\":\"Can't Mint Anymore\"},\"23951\":{\"message\":\"Insufficient gas\"},\"42708\":{\"message\":\"Invalid sender!\"},\"43422\":{\"message\":\"Invalid value - Burn\"},\"62972\":{\"message\":\"Invalid balance\"}},\"interfaces\":[\"org.ton.introspection.v0\",\"org.ton.abi.ipfs.v0\",\"org.ton.deploy.lazy.v0\",\"org.ton.chain.workchain.v0\",\"org.ton.jetton.wallet\"]}","init":{"kind":"direct","args":[{"name":"master","type":{"kind":"simple","type":"address","optional":false}},{"name":"owner","type":{"kind":"simple","type":"address","optional":false}}],"prefix":{"bits":1,"value":0},"deployment":{"kind":"system-cell","system":"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"}},"sources":{"sources/jetton.tact":"aW1wb3J0ICJAc3RkbGliL293bmFibGUiOwppbXBvcnQgIi4vbWVzc2FnZXMiOwoKLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC8vCkBpbnRlcmZhY2UoIm9yZy50b24uamV0dG9uLm1hc3RlciIpCnRyYWl0IEpldHRvbiB3aXRoIE93bmFibGUgewoKICAgIHRvdGFsX3N1cHBseTogSW50OyAvLyBBbHJlYWR5IHNldCBpbml0aWFsbHkgCiAgICBtaW50YWJsZTogQm9vbDsKICAgIG93bmVyOiBBZGRyZXNzOwogICAgY29udGVudDogQ2VsbDsKICAgIAogICAgcmVjZWl2ZShtc2c6IFRva2VuVXBkYXRlQ29udGVudCkgewogICAgICAgIHNlbGYucmVxdWlyZU93bmVyKCk7ICAgICAgICAgICAgICAgIC8vIEFsbG93IGNoYW5naW5nIGNvbnRlbnQgb25seSBieSBvd25lcgogICAgICAgIHNlbGYuY29udGVudCA9IG1zZy5jb250ZW50OyAgICAgICAgIC8vIFVwZGF0ZSBjb250ZW50CiAgICB9CgogICAgcmVjZWl2ZShtc2c6IFRva2VuQnVybk5vdGlmaWNhdGlvbikgewogICAgICAgIHNlbGYucmVxdWlyZVNlbmRlckFzV2FsbGV0T3duZXIobXNnLnJlc3BvbnNlX2Rlc3RpbmF0aW9uKTsgICAgICAgLy8gQ2hlY2sgd2FsbGV0CiAgICAgICAgc2VsZi50b3RhbF9zdXBwbHkgPSBzZWxmLnRvdGFsX3N1cHBseSAtIG1zZy5hbW91bnQ7IC8vIFVwZGF0ZSBzdXBwbHkKICAgICAgICBpZiAobXNnLnJlc3BvbnNlX2Rlc3RpbmF0aW9uICE9IG51bGwpIHsgLy8gQ2FzaGJhY2sKICAgICAgICAgICAgc2VuZChTZW5kUGFyYW1ldGVyc3sKICAgICAgICAgICAgICAgIHRvOiBtc2cucmVzcG9uc2VfZGVzdGluYXRpb24sIAogICAgICAgICAgICAgICAgdmFsdWU6IDAsCiAgICAgICAgICAgICAgICBib3VuY2U6IGZhbHNlLAogICAgICAgICAgICAgICAgbW9kZTogU2VuZFJlbWFpbmluZ1ZhbHVlICsgU2VuZElnbm9yZUVycm9ycywKICAgICAgICAgICAgICAgIGJvZHk6IFRva2VuRXhjZXNzZXN7IHF1ZXJ5X2lkOiBtc2cucXVlcnlfaWQgfS50b0NlbGwoKQogICAgICAgICAgICB9KTsKICAgICAgICB9CiAgICB9CgogICAgLy8gUHJpdmF0ZSBNZXRob2RzIC8vIAogICAgLy8gQHRvIFRoZSBBZGRyZXNzIHJlY2VpdmUgdGhlIEpldHRvbiB0b2tlbiBhZnRlciBtaW50aW5nCiAgICAvLyBAYW1vdW50IFRoZSBhbW91bnQgb2YgSmV0dG9uIHRva2VuIGJlaW5nIG1pbnRlZAogICAgLy8gQHJlc3BvbnNlX2Rlc3RpbmF0aW9uIFRoZSBwcmV2aW91cyBvd25lciBhZGRyZXNzCiAgICBmdW4gbWludCh0bzogQWRkcmVzcywgYW1vdW50OiBJbnQsIHJlc3BvbnNlX2Rlc3RpbmF0aW9uOiBBZGRyZXNzKSB7CiAgICAgICAgcmVxdWlyZShzZWxmLm1pbnRhYmxlLCAiQ2FuJ3QgTWludCBBbnltb3JlIik7CiAgICAgICAgc2VsZi50b3RhbF9zdXBwbHkgPSBzZWxmLnRvdGFsX3N1cHBseSArIGFtb3VudDsgLy8gVXBkYXRlIHRvdGFsIHN1cHBseQoKICAgICAgICBsZXQgd2luaXQ6IFN0YXRlSW5pdCA9IHNlbGYuZ2V0SmV0dG9uV2FsbGV0SW5pdCh0byk7IC8vIENyZWF0ZSBtZXNzYWdlCiAgICAgICAgc2VuZChTZW5kUGFyYW1ldGVyc3sKICAgICAgICAgICAgdG86IGNvbnRyYWN0QWRkcmVzcyh3aW5pdCksIAogICAgICAgICAgICB2YWx1ZTogMCwgCiAgICAgICAgICAgIGJvdW5jZTogdHJ1ZSwKICAgICAgICAgICAgbW9kZTogU2VuZFJlbWFpbmluZ1ZhbHVlLAogICAgICAgICAgICBib2R5OiBUb2tlblRyYW5zZmVySW50ZXJuYWx7IAogICAgICAgICAgICAgICAgcXVlcnlfaWQ6IDAsCiAgICAgICAgICAgICAgICBhbW91bnQ6IGFtb3VudCwKICAgICAgICAgICAgICAgIGZyb206IG15QWRkcmVzcygpLAogICAgICAgICAgICAgICAgcmVzcG9uc2VfZGVzdGluYXRpb246IHJlc3BvbnNlX2Rlc3RpbmF0aW9uLAogICAgICAgICAgICAgICAgZm9yd2FyZF90b25fYW1vdW50OiAwLAogICAgICAgICAgICAgICAgZm9yd2FyZF9wYXlsb2FkOiBlbXB0eVNsaWNlKCkKICAgICAgICAgICAgfS50b0NlbGwoKSwKICAgICAgICAgICAgY29kZTogd2luaXQuY29kZSwKICAgICAgICAgICAgZGF0YTogd2luaXQuZGF0YQogICAgICAgIH0pOwogICAgfQoKICAgIGZ1biByZXF1aXJlU2VuZGVyQXNXYWxsZXRPd25lcihvd25lcjogQWRkcmVzcykgewogICAgICAgIGxldCBjdHg6IENvbnRleHQgPSBjb250ZXh0KCk7CiAgICAgICAgbGV0IHdpbml0OiBTdGF0ZUluaXQgPSBzZWxmLmdldEpldHRvbldhbGxldEluaXQob3duZXIpOwogICAgICAgIHJlcXVpcmUoY29udHJhY3RBZGRyZXNzKHdpbml0KSA9PSBjdHguc2VuZGVyLCAiSW52YWxpZCBzZW5kZXIiKTsKICAgIH0KCiAgICB2aXJ0dWFsIGZ1biBnZXRKZXR0b25XYWxsZXRJbml0KGFkZHJlc3M6IEFkZHJlc3MpOiBTdGF0ZUluaXQgewogICAgICAgIHJldHVybiBpbml0T2YgSmV0dG9uRGVmYXVsdFdhbGxldChteUFkZHJlc3MoKSwgYWRkcmVzcyk7CiAgICB9CgogICAgLy8gPT09PT09IEdldCBNZXRob2RzID09PT09PSAvLwogICAgZ2V0IGZ1biBnZXRfamV0dG9uX2RhdGEoKTogSmV0dG9uRGF0YSB7CiAgICAgICAgbGV0IGNvZGU6IENlbGwgPSBzZWxmLmdldEpldHRvbldhbGxldEluaXQobXlBZGRyZXNzKCkpLmNvZGU7CiAgICAgICAgcmV0dXJuIEpldHRvbkRhdGF7IAogICAgICAgICAgICB0b3RhbF9zdXBwbHk6IHNlbGYudG90YWxfc3VwcGx5LCAKICAgICAgICAgICAgbWludGFibGU6IHNlbGYubWludGFibGUsIAogICAgICAgICAgICBvd25lcjogc2VsZi5vd25lciwgCiAgICAgICAgICAgIGNvbnRlbnQ6IHNlbGYuY29udGVudCwgCiAgICAgICAgICAgIHdhbGxldF9jb2RlOiBjb2RlCiAgICAgICAgfTsKICAgIH0KCiAgICBnZXQgZnVuIGdldF93YWxsZXRfYWRkcmVzcyhvd25lcjogQWRkcmVzcyk6IEFkZHJlc3MgewogICAgICAgIGxldCB3aW5pdDogU3RhdGVJbml0ID0gc2VsZi5nZXRKZXR0b25XYWxsZXRJbml0KG93bmVyKTsKICAgICAgICByZXR1cm4gY29udHJhY3RBZGRyZXNzKHdpbml0KTsKICAgIH0KfQoKLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC8vCkBpbnRlcmZhY2UoIm9yZy50b24uamV0dG9uLndhbGxldCIpCmNvbnRyYWN0IEpldHRvbkRlZmF1bHRXYWxsZXQgewogICAgY29uc3QgbWluVG9uc0ZvclN0b3JhZ2U6IEludCA9IHRvbigiMC4wMSIpOwogICAgY29uc3QgZ2FzQ29uc3VtcHRpb246IEludCA9IHRvbigiMC4wMSIpOwoKICAgIGJhbGFuY2U6IEludDsKICAgIG93bmVyOiBBZGRyZXNzOwogICAgbWFzdGVyOiBBZGRyZXNzOwoKICAgIGluaXQobWFzdGVyOiBBZGRyZXNzLCBvd25lcjogQWRkcmVzcykgewogICAgICAgIHNlbGYuYmFsYW5jZSA9IDA7CiAgICAgICAgc2VsZi5vd25lciA9IG93bmVyOwogICAgICAgIHNlbGYubWFzdGVyID0gbWFzdGVyOwogICAgfQoKICAgIHJlY2VpdmUobXNnOiBUb2tlblRyYW5zZmVyKSB7IC8vIDB4ZjhhN2VhNQogICAgICAgIGxldCBjdHg6IENvbnRleHQgPSBjb250ZXh0KCk7IC8vIENoZWNrIHNlbmRlcgogICAgICAgIHJlcXVpcmUoY3R4LnNlbmRlciA9PSBzZWxmLm93bmVyLCAiSW52YWxpZCBzZW5kZXIiKTsKCiAgICAgICAgLy8gR2FzIGNoZWNrcwogICAgICAgIGxldCBmd2RfZmVlOiBJbnQgPSBjdHgucmVhZEZvcndhcmRGZWUoKSArIGN0eC5yZWFkRm9yd2FyZEZlZSgpOyAgCiAgICAgICAgbGV0IGZpbmFsOiBJbnQgPSAgMiAqIHNlbGYuZ2FzQ29uc3VtcHRpb24gKyBzZWxmLm1pblRvbnNGb3JTdG9yYWdlICsgZndkX2ZlZTsKICAgICAgICByZXF1aXJlKGN0eC52YWx1ZSA+IG1pbihmaW5hbCwgdG9uKCIwLjAxIikpLCAiSW52YWxpZCB2YWx1ZSEhIik7IAoKICAgICAgICAvLyBVcGRhdGUgYmFsYW5jZQogICAgICAgIHNlbGYuYmFsYW5jZSA9IHNlbGYuYmFsYW5jZSAtIG1zZy5hbW91bnQ7IAogICAgICAgIHJlcXVpcmUoc2VsZi5iYWxhbmNlID49IDAsICJJbnZhbGlkIGJhbGFuY2UiKTsKCiAgICAgICAgbGV0IGluaXQ6IFN0YXRlSW5pdCA9IGluaXRPZiBKZXR0b25EZWZhdWx0V2FsbGV0KHNlbGYubWFzdGVyLCBtc2cuZGVzdGluYXRpb24pOyAgCiAgICAgICAgbGV0IHdhbGxldF9hZGRyZXNzOiBBZGRyZXNzID0gY29udHJhY3RBZGRyZXNzKGluaXQpOwogICAgICAgIHNlbmQoU2VuZFBhcmFtZXRlcnN7CiAgICAgICAgICAgIHRvOiB3YWxsZXRfYWRkcmVzcywgCiAgICAgICAgICAgIHZhbHVlOiAwLAogICAgICAgICAgICBtb2RlOiBTZW5kUmVtYWluaW5nVmFsdWUsIAogICAgICAgICAgICBib3VuY2U6IHRydWUsCiAgICAgICAgICAgIGJvZHk6IFRva2VuVHJhbnNmZXJJbnRlcm5hbHsKICAgICAgICAgICAgICAgIHF1ZXJ5X2lkOiBtc2cucXVlcnlfaWQsCiAgICAgICAgICAgICAgICBhbW91bnQ6IG1zZy5hbW91bnQsCiAgICAgICAgICAgICAgICBmcm9tOiBzZWxmLm93bmVyLAogICAgICAgICAgICAgICAgcmVzcG9uc2VfZGVzdGluYXRpb246IG1zZy5yZXNwb25zZV9kZXN0aW5hdGlvbiwKICAgICAgICAgICAgICAgIGZvcndhcmRfdG9uX2Ftb3VudDogbXNnLmZvcndhcmRfdG9uX2Ftb3VudCwKICAgICAgICAgICAgICAgIGZvcndhcmRfcGF5bG9hZDogbXNnLmZvcndhcmRfcGF5bG9hZAogICAgICAgICAgICB9LnRvQ2VsbCgpLAogICAgICAgICAgICBjb2RlOiBpbml0LmNvZGUsCiAgICAgICAgICAgIGRhdGE6IGluaXQuZGF0YQogICAgICAgIH0pOwogICAgfQoKICAgIHJlY2VpdmUobXNnOiBUb2tlblRyYW5zZmVySW50ZXJuYWwpIHsgLy8gMHgxNzhkNDUxOQogICAgICAgIGxldCBjdHg6IENvbnRleHQgPSBjb250ZXh0KCk7CgogICAgICAgIGlmIChjdHguc2VuZGVyICE9IHNlbGYubWFzdGVyKSB7CiAgICAgICAgICAgIGxldCBzaW5pdDogU3RhdGVJbml0ID0gaW5pdE9mIEpldHRvbkRlZmF1bHRXYWxsZXQoc2VsZi5tYXN0ZXIsIG1zZy5mcm9tKTsKICAgICAgICAgICAgcmVxdWlyZShjb250cmFjdEFkZHJlc3Moc2luaXQpID09IGN0eC5zZW5kZXIsICJJbnZhbGlkIHNlbmRlciEiKTsKICAgICAgICB9CgogICAgICAgIC8vIFVwZGF0ZSBiYWxhbmNlCiAgICAgICAgc2VsZi5iYWxhbmNlID0gc2VsZi5iYWxhbmNlICsgbXNnLmFtb3VudDsKICAgICAgICByZXF1aXJlKHNlbGYuYmFsYW5jZSA+PSAwLCAiSW52YWxpZCBiYWxhbmNlIik7IAogICAgICAgIAogICAgICAgIC8vIEdldCB2YWx1ZSBmb3IgZ2FzCiAgICAgICAgbGV0IG1zZ192YWx1ZTogSW50ID0gc2VsZi5tc2dfdmFsdWUoY3R4LnZhbHVlKTsgIAogICAgICAgIGxldCBmd2RfZmVlOiBJbnQgPSBjdHgucmVhZEZvcndhcmRGZWUoKTsKICAgICAgICBtc2dfdmFsdWUgPSBtc2dfdmFsdWUgLSBtc2cuZm9yd2FyZF90b25fYW1vdW50IC0gZndkX2ZlZTsKICAgICAgICAKICAgICAgICAgLy8gMHg3MzYyZDA5YyAtIG5vdGlmeSB0aGUgbmV3IG93bmVyIG9mIEpldHRvblRva2VuIHRoYXQgdGhlIHRyYW5zZmVyIGlzIGNvbXBsZXRlCiAgICAgICAgaWYgKG1zZy5mb3J3YXJkX3Rvbl9hbW91bnQgPiAwKSB7IAogICAgICAgICAgICBzZW5kKFNlbmRQYXJhbWV0ZXJzewogICAgICAgICAgICAgICAgdG86IHNlbGYub3duZXIsCiAgICAgICAgICAgICAgICB2YWx1ZTogbXNnLmZvcndhcmRfdG9uX2Ftb3VudCwKICAgICAgICAgICAgICAgIG1vZGU6IFNlbmRQYXlHYXNTZXBhcmF0ZWx5ICsgU2VuZElnbm9yZUVycm9ycywKICAgICAgICAgICAgICAgIGJvdW5jZTogZmFsc2UsCiAgICAgICAgICAgICAgICBib2R5OiBUb2tlbk5vdGlmaWNhdGlvbiB7CiAgICAgICAgICAgICAgICAgICAgcXVlcnlfaWQ6IG1zZy5xdWVyeV9pZCwKICAgICAgICAgICAgICAgICAgICBhbW91bnQ6IG1zZy5hbW91bnQsCiAgICAgICAgICAgICAgICAgICAgZnJvbTogbXNnLmZyb20sCiAgICAgICAgICAgICAgICAgICAgZm9yd2FyZF9wYXlsb2FkOiBtc2cuZm9yd2FyZF9wYXlsb2FkCiAgICAgICAgICAgICAgICB9LnRvQ2VsbCgpCiAgICAgICAgICAgIH0pOwogICAgICAgIH0KCiAgICAgICAgLy8gMHhkNTMyNzZkYiAtLSBDYXNoYmFjayB0byB0aGUgb3JpZ2luYWwgU2VuZGVyCiAgICAgICAgaWYgKG1zZy5yZXNwb25zZV9kZXN0aW5hdGlvbiAhPSBudWxsKSB7IAogICAgICAgICAgICBzZW5kKFNlbmRQYXJhbWV0ZXJzIHsKICAgICAgICAgICAgICAgIHRvOiBtc2cucmVzcG9uc2VfZGVzdGluYXRpb24sIAogICAgICAgICAgICAgICAgdmFsdWU6IG1zZ192YWx1ZSwgIAogICAgICAgICAgICAgICAgYm91bmNlOiBmYWxzZSwKICAgICAgICAgICAgICAgIGJvZHk6IFRva2VuRXhjZXNzZXMgeyAKICAgICAgICAgICAgICAgICAgICBxdWVyeV9pZDogbXNnLnF1ZXJ5X2lkCiAgICAgICAgICAgICAgICB9LnRvQ2VsbCgpLAogICAgICAgICAgICAgICAgbW9kZTogU2VuZElnbm9yZUVycm9ycwogICAgICAgICAgICB9KTsKICAgICAgICB9CiAgICB9CgogICAgcmVjZWl2ZShtc2c6IFRva2VuQnVybikgewogICAgICAgIGxldCBjdHg6IENvbnRleHQgPSBjb250ZXh0KCk7CiAgICAgICAgcmVxdWlyZShjdHguc2VuZGVyID09IHNlbGYub3duZXIsICJJbnZhbGlkIHNlbmRlciIpOyAgLy8gQ2hlY2sgc2VuZGVyCgogICAgICAgIHNlbGYuYmFsYW5jZSA9IHNlbGYuYmFsYW5jZSAtIG1zZy5hbW91bnQ7IC8vIFVwZGF0ZSBiYWxhbmNlCiAgICAgICAgcmVxdWlyZShzZWxmLmJhbGFuY2UgPj0gMCwgIkludmFsaWQgYmFsYW5jZSIpOwoKICAgICAgICBsZXQgZndkX2ZlZTogSW50ID0gY3R4LnJlYWRGb3J3YXJkRmVlKCk7IC8vIEdhcyBjaGVja3MKICAgICAgICByZXF1aXJlKGN0eC52YWx1ZSA+IGZ3ZF9mZWUgKyAyICogc2VsZi5nYXNDb25zdW1wdGlvbiArIHNlbGYubWluVG9uc0ZvclN0b3JhZ2UsICJJbnZhbGlkIHZhbHVlIC0gQnVybiIpOwoKICAgICAgICAvLyBCdXJuIHRva2VucwogICAgICAgIHNlbmQoU2VuZFBhcmFtZXRlcnN7ICAKICAgICAgICAgICAgdG86IHNlbGYubWFzdGVyLAogICAgICAgICAgICB2YWx1ZTogMCwKICAgICAgICAgICAgbW9kZTogU2VuZFJlbWFpbmluZ1ZhbHVlLAogICAgICAgICAgICBib3VuY2U6IHRydWUsCiAgICAgICAgICAgIGJvZHk6IFRva2VuQnVybk5vdGlmaWNhdGlvbnsKICAgICAgICAgICAgICAgIHF1ZXJ5X2lkOiBtc2cucXVlcnlfaWQsCiAgICAgICAgICAgICAgICBhbW91bnQ6IG1zZy5hbW91bnQsCiAgICAgICAgICAgICAgICByZXNwb25zZV9kZXN0aW5hdGlvbjogc2VsZi5vd25lcgogICAgICAgICAgICB9LnRvQ2VsbCgpCiAgICAgICAgfSk7CiAgICB9CgogICAgcmVjZWl2ZShtc2c6IFByb3ZpZGVXYWxsZXRBZGRyZXNzKSB7CiAgICAgICAgcmVxdWlyZShjb250ZXh0KCkudmFsdWUgPj0gdG9uKCIwLjAwNjEiKSwgIkluc3VmZmljaWVudCBnYXMiKTsKICAgICAgICBsZXQgaW5pdDogU3RhdGVJbml0ID0gaW5pdE9mIEpldHRvbkRlZmF1bHRXYWxsZXQoc2VsZi5tYXN0ZXIsIG1zZy5vd25lcl9hZGRyZXNzKTsKICAgICAgICBsZXQgd2FsbGV0X2FkZHJlc3M6IEFkZHJlc3MgPSBjb250cmFjdEFkZHJlc3MoaW5pdCk7CgogICAgICAgIGxldCByZXNwb25zZV9ib2R5OiBUYWtlV2FsbGV0QWRkcmVzcyA9IFRha2VXYWxsZXRBZGRyZXNzewogICAgICAgICAgICAgICAgcXVlcnlfaWQ6IG1zZy5xdWVyeV9pZCwKICAgICAgICAgICAgICAgIHdhbGxldF9hZGRyZXNzOiB3YWxsZXRfYWRkcmVzcywKICAgICAgICAgICAgICAgIG93bmVyX2FkZHJlc3M6IG51bGwKICAgICAgICAgICAgfTsKICAgICAgICBpZiAobXNnLmluY2x1ZGVfYWRkcmVzcykgewogICAgICAgICAgICByZXNwb25zZV9ib2R5Lm93bmVyX2FkZHJlc3MgPSBtc2cub3duZXJfYWRkcmVzczsKICAgICAgICB9CiAgICAgICAgc2VuZChTZW5kUGFyYW1ldGVyc3sKICAgICAgICAgICAgdG86IHNlbmRlcigpLAogICAgICAgICAgICB2YWx1ZTogMCwKICAgICAgICAgICAgbW9kZTogU2VuZFJlbWFpbmluZ1ZhbHVlLAogICAgICAgICAgICBib3VuY2U6IHRydWUsCiAgICAgICAgICAgIGJvZHk6IHJlc3BvbnNlX2JvZHkudG9DZWxsKCkKICAgICAgICB9KTsKICAgIH0KCiAgICBnZXQgZnVuIG1zZ192YWx1ZSh2YWx1ZTogSW50KTogSW50IHsKICAgICAgICBsZXQgbXNnX3ZhbHVlOiBJbnQgPSB2YWx1ZTsKICAgICAgICBsZXQgdG9uX2JhbGFuY2VfYmVmb3JlX21zZzogSW50ID0gbXlCYWxhbmNlKCkgLSBtc2dfdmFsdWU7CiAgICAgICAgbGV0IHN0b3JhZ2VfZmVlOiBJbnQgPSBzZWxmLm1pblRvbnNGb3JTdG9yYWdlIC0gbWluKHRvbl9iYWxhbmNlX2JlZm9yZV9tc2csIHNlbGYubWluVG9uc0ZvclN0b3JhZ2UpOwogICAgICAgIG1zZ192YWx1ZSA9IG1zZ192YWx1ZSAtIChzdG9yYWdlX2ZlZSArIHNlbGYuZ2FzQ29uc3VtcHRpb24pOwogICAgICAgIHJldHVybiBtc2dfdmFsdWU7CiAgICB9CgogICAgYm91bmNlZChzcmM6IGJvdW5jZWQ8VG9rZW5UcmFuc2ZlckludGVybmFsPikgewogICAgICAgIHNlbGYuYmFsYW5jZSA9IHNlbGYuYmFsYW5jZSArIHNyYy5hbW91bnQ7CiAgICB9CgogICAgYm91bmNlZChzcmM6IGJvdW5jZWQ8VG9rZW5CdXJuTm90aWZpY2F0aW9uPikgewogICAgICAgIHNlbGYuYmFsYW5jZSA9IHNlbGYuYmFsYW5jZSArIHNyYy5hbW91bnQ7CiAgICB9CgogICAgZ2V0IGZ1biBnZXRfd2FsbGV0X2RhdGEoKTogSmV0dG9uV2FsbGV0RGF0YSB7CiAgICAgICAgcmV0dXJuIEpldHRvbldhbGxldERhdGF7CiAgICAgICAgICAgIGJhbGFuY2U6IHNlbGYuYmFsYW5jZSwKICAgICAgICAgICAgb3duZXI6IHNlbGYub3duZXIsCiAgICAgICAgICAgIG1hc3Rlcjogc2VsZi5tYXN0ZXIsCiAgICAgICAgICAgIHdhbGxldF9jb2RlOiAoaW5pdE9mIEpldHRvbkRlZmF1bHRXYWxsZXQoc2VsZi5tYXN0ZXIsIHNlbGYub3duZXIpKS5jb2RlCiAgICAgICAgfTsKICAgIH0KICAgIAogICAgLy8gYm91bmNlZChtc2c6IFNsaWNlKSB7CiAgICAvLyAgICAgLy8gUGFyc2UgYm91bmNlZCBtZXNzYWdlCiAgICAvLyAgICAgbXNnLnNraXBCaXRzKDMyKTsgLy8gMHhGRkZGRkZGRiAKICAgIC8vICAgICBsZXQgb3A6IEludCA9IG1zZy5sb2FkVWludCgzMik7CiAgICAvLyAgICAgbGV0IHF1ZXJ5X2lkOiBJbnQgPSBtc2cubG9hZFVpbnQoNjQpOwogICAgLy8gICAgIGxldCBqZXR0b25BbW91bnQ6IEludCA9IG1zZy5sb2FkQ29pbnMoKTsKICAgIC8vICAgICByZXF1aXJlKG9wID09IDB4MTc4ZDQ1MTkgfHwgb3AgPT0gMHg3YmRkOTdkZSwgIkludmFsaWQgYm91bmNlZCBtZXNzYWdlIik7CiAgICAvLyAgICAgc2VsZi5iYWxhbmNlID0gc2VsZi5iYWxhbmNlICsgamV0dG9uQW1vdW50OyAvLyBVcGRhdGUgYmFsYW5jZQogICAgLy8gfQoKfQo=","sources/messages.tact":"c3RydWN0IEpldHRvbkRhdGEgewogICAgdG90YWxfc3VwcGx5OiBJbnQ7CiAgICBtaW50YWJsZTogQm9vbDsKICAgIG93bmVyOiBBZGRyZXNzOwogICAgY29udGVudDogQ2VsbDsKICAgIHdhbGxldF9jb2RlOiBDZWxsOwp9CgpzdHJ1Y3QgSmV0dG9uV2FsbGV0RGF0YSB7CiAgICBiYWxhbmNlOiBJbnQ7CiAgICBvd25lcjogQWRkcmVzczsKICAgIG1hc3RlcjogQWRkcmVzczsKICAgIHdhbGxldF9jb2RlOiBDZWxsOwp9CgptZXNzYWdlKDB4ZjhhN2VhNSkgVG9rZW5UcmFuc2ZlciB7CiAgICBxdWVyeV9pZDogSW50IGFzIHVpbnQ2NDsKICAgIGFtb3VudDogSW50IGFzIGNvaW5zOwogICAgZGVzdGluYXRpb246IEFkZHJlc3M7CiAgICByZXNwb25zZV9kZXN0aW5hdGlvbjogQWRkcmVzczsKICAgIGN1c3RvbV9wYXlsb2FkOiBDZWxsPzsKICAgIGZvcndhcmRfdG9uX2Ftb3VudDogSW50IGFzIGNvaW5zOwogICAgZm9yd2FyZF9wYXlsb2FkOiBTbGljZSBhcyByZW1haW5pbmc7IC8vIENvbW1lbnQgVGV4dCBtZXNzYWdlIHdoZW4gVHJhbnNmZXIgdGhlIGpldHRvbgp9CgptZXNzYWdlKDB4MTc4ZDQ1MTkpIFRva2VuVHJhbnNmZXJJbnRlcm5hbCB7CiAgICBxdWVyeV9pZDogSW50IGFzIHVpbnQ2NDsKICAgIGFtb3VudDogSW50IGFzIGNvaW5zOwogICAgZnJvbTogQWRkcmVzczsKICAgIHJlc3BvbnNlX2Rlc3RpbmF0aW9uOiBBZGRyZXNzOwogICAgZm9yd2FyZF90b25fYW1vdW50OiBJbnQgYXMgY29pbnM7CiAgICBmb3J3YXJkX3BheWxvYWQ6IFNsaWNlIGFzIHJlbWFpbmluZzsgLy8gQ29tbWVudCBUZXh0IG1lc3NhZ2Ugd2hlbiBUcmFuc2ZlciB0aGUgamV0dG9uCn0KCm1lc3NhZ2UoMHg3MzYyZDA5YykgVG9rZW5Ob3RpZmljYXRpb24gewogICAgcXVlcnlfaWQ6IEludCBhcyB1aW50NjQ7CiAgICBhbW91bnQ6IEludCBhcyBjb2luczsKICAgIGZyb206IEFkZHJlc3M7CiAgICBmb3J3YXJkX3BheWxvYWQ6IFNsaWNlIGFzIHJlbWFpbmluZzsgLy8gQ29tbWVudCBUZXh0IG1lc3NhZ2Ugd2hlbiBUcmFuc2ZlciB0aGUgamV0dG9uIAp9CgptZXNzYWdlKDB4NTk1ZjA3YmMpIFRva2VuQnVybiB7CiAgICBxdWVyeV9pZDogSW50IGFzIHVpbnQ2NDsKICAgIGFtb3VudDogSW50IGFzIGNvaW5zOwogICAgcmVzcG9uc2VfZGVzdGluYXRpb246IEFkZHJlc3M7CiAgICBjdXN0b21fcGF5bG9hZDogQ2VsbD87Cn0KCm1lc3NhZ2UoMHg3YmRkOTdkZSkgVG9rZW5CdXJuTm90aWZpY2F0aW9uIHsKICAgIHF1ZXJ5X2lkOiBJbnQgYXMgdWludDY0OwogICAgYW1vdW50OiBJbnQgYXMgY29pbnM7CiAgICByZXNwb25zZV9kZXN0aW5hdGlvbjogQWRkcmVzczsKfQoKbWVzc2FnZSgweGQ1MzI3NmRiKSBUb2tlbkV4Y2Vzc2VzIHsKICAgIHF1ZXJ5X2lkOiBJbnQgYXMgdWludDY0Owp9CgptZXNzYWdlIFRva2VuVXBkYXRlQ29udGVudCB7CiAgICBjb250ZW50OiBDZWxsOwp9CgovLyA9PT09IFRFUDg5OiBKZXR0b24gV2FsbGV0IERpc2NvdmVyeSA9PT09Cm1lc3NhZ2UoMHgyYzc2Yjk3MykgUHJvdmlkZVdhbGxldEFkZHJlc3MgewogICAgcXVlcnlfaWQ6IEludCBhcyB1aW50NjQ7CiAgICBvd25lcl9hZGRyZXNzOiBBZGRyZXNzOwogICAgaW5jbHVkZV9hZGRyZXNzOiBCb29sOwp9CgptZXNzYWdlKDB4ZDE3MzU0MDApIFRha2VXYWxsZXRBZGRyZXNzIHsKICAgIHF1ZXJ5X2lkOiBJbnQgYXMgdWludDY0OwogICAgd2FsbGV0X2FkZHJlc3M6IEFkZHJlc3M7CiAgICBvd25lcl9hZGRyZXNzOiBBZGRyZXNzPzsKfQo=","sources/contract.tact":"aW1wb3J0ICIuL2pldHRvbiI7CgptZXNzYWdlIE1pbnQgewogICAgYW1vdW50OiBJbnQ7CiAgICByZWNlaXZlcjogQWRkcmVzczsKfQoKY29udHJhY3QgU2FtcGxlSmV0dG9uIHdpdGggSmV0dG9uIHsKICAgIHRvdGFsX3N1cHBseTogSW50IGFzIGNvaW5zOwogICAgb3duZXI6IEFkZHJlc3M7CiAgICBjb250ZW50OiBDZWxsOwogICAgbWludGFibGU6IEJvb2w7CgogICAgbWF4X3N1cHBseTogSW50IGFzIGNvaW5zOyAvLyBFeHRyYWN0IHBhcmFtZXRlciB3ZSBzZXQgaGVyZS4gVGhlIEpldHRvbiBTdGFuZGFyZHMgZG9lc24ndCBoYXZlIHRoaXMgcGFyYW1ldGVyLgoKICAgIGluaXQob3duZXI6IEFkZHJlc3MsIGNvbnRlbnQ6IENlbGwsIG1heF9zdXBwbHk6IEludCkgewogICAgICAgIHNlbGYudG90YWxfc3VwcGx5ID0gMDsKICAgICAgICBzZWxmLm93bmVyID0gb3duZXI7CiAgICAgICAgc2VsZi5taW50YWJsZSA9IHRydWU7CiAgICAgICAgc2VsZi5jb250ZW50ID0gY29udGVudDsKICAgICAgICBzZWxmLm1heF9zdXBwbHkgPSBtYXhfc3VwcGx5OwogICAgfQoKICAgIHJlY2VpdmUobXNnOiBNaW50KSB7CiAgICAgICAgbGV0IGN0eDogQ29udGV4dCA9IGNvbnRleHQoKTsKICAgICAgICByZXF1aXJlKGN0eC5zZW5kZXIgPT0gc2VsZi5vd25lciwgIk5vdCBvd25lciIpOwogICAgICAgIHJlcXVpcmUoc2VsZi5taW50YWJsZSwgIk5vdCBtaW50YWJsZSIpOwogICAgICAgIHJlcXVpcmUoc2VsZi50b3RhbF9zdXBwbHkgKyBtc2cuYW1vdW50IDw9IHNlbGYubWF4X3N1cHBseSwgIk1heCBzdXBwbHkgZXhjZWVkZWQiKTsKICAgICAgICBzZWxmLm1pbnQobXNnLnJlY2VpdmVyLCBtc2cuYW1vdW50LCBzZWxmLm93bmVyKTsgLy8gKHRvLCBhbW91bnQsIHJlc3BvbnNlX2Rlc3RpbmF0aW9uKQogICAgfQoKICAgIHJlY2VpdmUoIk1pbnQ6IDEwMCIpIHsgLy8gUHVibGljIE1pbnRpbmcKICAgICAgICBsZXQgY3R4OiBDb250ZXh0ID0gY29udGV4dCgpOwogICAgICAgIHJlcXVpcmUoc2VsZi5taW50YWJsZSwgIk5vdCBtaW50YWJsZSIpOwogICAgICAgIHJlcXVpcmUoc2VsZi50b3RhbF9zdXBwbHkgKyAxMDAgPD0gc2VsZi5tYXhfc3VwcGx5LCAiTWF4IHN1cHBseSBleGNlZWRlZCIpOwogICAgICAgIHNlbGYubWludChjdHguc2VuZGVyLCAxMDAsIHNlbGYub3duZXIpOyAvLyDwn5S0IAogICAgfQoKICAgIHJlY2VpdmUoIk93bmVyOiBNaW50Q2xvc2UiKSB7CiAgICAgICAgbGV0IGN0eDogQ29udGV4dCA9IGNvbnRleHQoKTsKICAgICAgICByZXF1aXJlKGN0eC5zZW5kZXIgPT0gc2VsZi5vd25lciwgIk5vdCBvd25lciIpOwogICAgICAgIHNlbGYubWludGFibGUgPSBmYWxzZTsKICAgIH0KfSA="},"compiler":{"name":"tact","version":"1.1.4","parameters":"{\"entrypoint\":\"./sources/contract.tact\",\"options\":{}}"}} \ No newline at end of file diff --git a/sources/output/SampleJetton_JettonDefaultWallet.stdlib.fc b/sources/output/SampleJetton_JettonDefaultWallet.stdlib.fc index b08bf77..79a2501 100644 --- a/sources/output/SampleJetton_JettonDefaultWallet.stdlib.fc +++ b/sources/output/SampleJetton_JettonDefaultWallet.stdlib.fc @@ -20,6 +20,15 @@ builder __tact_store_address(builder b, slice address) inline { return b.store_slice(__tact_verify_address(address)); } +builder __tact_store_address_opt(builder b, slice address) inline { + if (null?(address)) { + b = b.store_uint(0, 2); + return b; + } else { + return __tact_store_address(b, address); + } +} + slice __tact_create_address(int chain, int hash) inline { var b = begin_cell(); b = b.store_uint(2, 2); @@ -53,6 +62,10 @@ forall X -> X __tact_not_null(X x) inline { return __tact_context; } +slice __tact_context_get_sender() inline { + return __tact_context_sender; +} + builder __tact_store_bool(builder b, int v) inline { return b.store_int(v, 1); } diff --git a/sources/output/SampleJetton_JettonDefaultWallet.storage.fc b/sources/output/SampleJetton_JettonDefaultWallet.storage.fc index e17953a..4752dbe 100644 --- a/sources/output/SampleJetton_JettonDefaultWallet.storage.fc +++ b/sources/output/SampleJetton_JettonDefaultWallet.storage.fc @@ -8,6 +8,16 @@ _ $StateInit$_get_code((cell, cell) v) inline { return v'code; } +;; +;; Type: Context +;; TLB: _ bounced:bool sender:address value:int257 raw:^slice = Context +;; + +_ $Context$_get_value((int, slice, int, slice) v) inline { + var (v'bounced, v'sender, v'value, v'raw) = v; + return v'value; +} + ;; ;; Type: SendParameters ;; TLB: _ bounce:bool to:address value:int257 mode:int257 body:Maybe ^cell code:Maybe ^cell data:Maybe ^cell = SendParameters @@ -27,46 +37,46 @@ _ $StateInit$_get_code((cell, cell) v) inline { ;; ;; Type: JettonWalletData -;; TLB: _ balance:int257 owner:address master:address walletCode:^cell = JettonWalletData +;; TLB: _ balance:int257 owner:address master:address wallet_code:^cell = JettonWalletData ;; (int, slice, slice, cell) $JettonWalletData$_to_external(((int, slice, slice, cell)) v) inline { - var (v'balance, v'owner, v'master, v'walletCode) = v; - return (v'balance, v'owner, v'master, v'walletCode); + var (v'balance, v'owner, v'master, v'wallet_code) = v; + return (v'balance, v'owner, v'master, v'wallet_code); } -((int, slice, slice, cell)) $JettonWalletData$_constructor_balance_owner_master_walletCode(int balance, slice owner, slice master, cell walletCode) inline { - return (balance, owner, master, walletCode); +((int, slice, slice, cell)) $JettonWalletData$_constructor_balance_owner_master_wallet_code(int balance, slice owner, slice master, cell wallet_code) inline { + return (balance, owner, master, wallet_code); } ;; ;; Type: TokenTransfer ;; Header: 0x0f8a7ea5 -;; TLB: token_transfer#0f8a7ea5 queryId:uint64 amount:coins destination:address response_destination:address custom_payload:Maybe ^cell forward_ton_amount:coins forward_payload:remainder = TokenTransfer +;; TLB: token_transfer#0f8a7ea5 query_id:uint64 amount:coins destination:address response_destination:address custom_payload:Maybe ^cell forward_ton_amount:coins forward_payload:remainder = TokenTransfer ;; (slice, ((int, int, slice, slice, cell, int, slice))) $TokenTransfer$_load(slice sc_0) inline_ref { throw_unless(129, sc_0~load_uint(32) == 260734629); - var v'queryId = sc_0~load_uint(64); + var v'query_id = sc_0~load_uint(64); var v'amount = sc_0~load_coins(); var v'destination = sc_0~__tact_load_address(); var v'response_destination = sc_0~__tact_load_address(); var v'custom_payload = sc_0~load_int(1) ? sc_0~load_ref() : null(); var v'forward_ton_amount = sc_0~load_coins(); var v'forward_payload = sc_0; - return (sc_0, (v'queryId, v'amount, v'destination, v'response_destination, v'custom_payload, v'forward_ton_amount, v'forward_payload)); + return (sc_0, (v'query_id, v'amount, v'destination, v'response_destination, v'custom_payload, v'forward_ton_amount, v'forward_payload)); } ;; ;; Type: TokenTransferInternal ;; Header: 0x178d4519 -;; TLB: token_transfer_internal#178d4519 queryId:uint64 amount:coins from:address response_destination:address forward_ton_amount:coins forward_payload:remainder = TokenTransferInternal +;; TLB: token_transfer_internal#178d4519 query_id:uint64 amount:coins from:address response_destination:address forward_ton_amount:coins forward_payload:remainder = TokenTransferInternal ;; builder $TokenTransferInternal$_store(builder build_0, (int, int, slice, slice, int, slice) v) inline_ref { - var (v'queryId, v'amount, v'from, v'response_destination, v'forward_ton_amount, v'forward_payload) = v; + var (v'query_id, v'amount, v'from, v'response_destination, v'forward_ton_amount, v'forward_payload) = v; build_0 = store_uint(build_0, 395134233, 32); - build_0 = build_0.store_uint(v'queryId, 64); + build_0 = build_0.store_uint(v'query_id, 64); build_0 = build_0.store_coins(v'amount); build_0 = __tact_store_address(build_0, v'from); build_0 = __tact_store_address(build_0, v'response_destination); @@ -81,36 +91,36 @@ cell $TokenTransferInternal$_store_cell((int, int, slice, slice, int, slice) v) (slice, ((int, int, slice, slice, int, slice))) $TokenTransferInternal$_load(slice sc_0) inline_ref { throw_unless(129, sc_0~load_uint(32) == 395134233); - var v'queryId = sc_0~load_uint(64); + var v'query_id = sc_0~load_uint(64); var v'amount = sc_0~load_coins(); var v'from = sc_0~__tact_load_address(); var v'response_destination = sc_0~__tact_load_address(); var v'forward_ton_amount = sc_0~load_coins(); var v'forward_payload = sc_0; - return (sc_0, (v'queryId, v'amount, v'from, v'response_destination, v'forward_ton_amount, v'forward_payload)); + return (sc_0, (v'query_id, v'amount, v'from, v'response_destination, v'forward_ton_amount, v'forward_payload)); } (slice, ((int, int))) $TokenTransferInternal$_load_bounced(slice sc_0) inline { throw_unless(129, sc_0~load_uint(32) == 395134233); - var v'queryId = sc_0~load_uint(64); + var v'query_id = sc_0~load_uint(64); var v'amount = sc_0~load_coins(); - return (sc_0, (v'queryId, v'amount)); + return (sc_0, (v'query_id, v'amount)); } -((int, int, slice, slice, int, slice)) $TokenTransferInternal$_constructor_queryId_amount_from_response_destination_forward_ton_amount_forward_payload(int queryId, int amount, slice from, slice response_destination, int forward_ton_amount, slice forward_payload) inline { - return (queryId, amount, from, response_destination, forward_ton_amount, forward_payload); +((int, int, slice, slice, int, slice)) $TokenTransferInternal$_constructor_query_id_amount_from_response_destination_forward_ton_amount_forward_payload(int query_id, int amount, slice from, slice response_destination, int forward_ton_amount, slice forward_payload) inline { + return (query_id, amount, from, response_destination, forward_ton_amount, forward_payload); } ;; ;; Type: TokenNotification ;; Header: 0x7362d09c -;; TLB: token_notification#7362d09c queryId:uint64 amount:coins from:address forward_payload:remainder = TokenNotification +;; TLB: token_notification#7362d09c query_id:uint64 amount:coins from:address forward_payload:remainder = TokenNotification ;; builder $TokenNotification$_store(builder build_0, (int, int, slice, slice) v) inline { - var (v'queryId, v'amount, v'from, v'forward_payload) = v; + var (v'query_id, v'amount, v'from, v'forward_payload) = v; build_0 = store_uint(build_0, 1935855772, 32); - build_0 = build_0.store_uint(v'queryId, 64); + build_0 = build_0.store_uint(v'query_id, 64); build_0 = build_0.store_coins(v'amount); build_0 = __tact_store_address(build_0, v'from); build_0 = build_0.store_slice(v'forward_payload); @@ -121,35 +131,35 @@ cell $TokenNotification$_store_cell((int, int, slice, slice) v) inline { return $TokenNotification$_store(begin_cell(), v).end_cell(); } -((int, int, slice, slice)) $TokenNotification$_constructor_queryId_amount_from_forward_payload(int queryId, int amount, slice from, slice forward_payload) inline { - return (queryId, amount, from, forward_payload); +((int, int, slice, slice)) $TokenNotification$_constructor_query_id_amount_from_forward_payload(int query_id, int amount, slice from, slice forward_payload) inline { + return (query_id, amount, from, forward_payload); } ;; ;; Type: TokenBurn ;; Header: 0x595f07bc -;; TLB: token_burn#595f07bc queryId:uint64 amount:coins response_destination:address custom_payload:Maybe ^cell = TokenBurn +;; TLB: token_burn#595f07bc query_id:uint64 amount:coins response_destination:address custom_payload:Maybe ^cell = TokenBurn ;; (slice, ((int, int, slice, cell))) $TokenBurn$_load(slice sc_0) inline { throw_unless(129, sc_0~load_uint(32) == 1499400124); - var v'queryId = sc_0~load_uint(64); + var v'query_id = sc_0~load_uint(64); var v'amount = sc_0~load_coins(); var v'response_destination = sc_0~__tact_load_address(); var v'custom_payload = sc_0~load_int(1) ? sc_0~load_ref() : null(); - return (sc_0, (v'queryId, v'amount, v'response_destination, v'custom_payload)); + return (sc_0, (v'query_id, v'amount, v'response_destination, v'custom_payload)); } ;; ;; Type: TokenBurnNotification ;; Header: 0x7bdd97de -;; TLB: token_burn_notification#7bdd97de queryId:uint64 amount:coins response_destination:address = TokenBurnNotification +;; TLB: token_burn_notification#7bdd97de query_id:uint64 amount:coins response_destination:address = TokenBurnNotification ;; builder $TokenBurnNotification$_store(builder build_0, (int, int, slice) v) inline { - var (v'queryId, v'amount, v'response_destination) = v; + var (v'query_id, v'amount, v'response_destination) = v; build_0 = store_uint(build_0, 2078119902, 32); - build_0 = build_0.store_uint(v'queryId, 64); + build_0 = build_0.store_uint(v'query_id, 64); build_0 = build_0.store_coins(v'amount); build_0 = __tact_store_address(build_0, v'response_destination); return build_0; @@ -161,25 +171,25 @@ cell $TokenBurnNotification$_store_cell((int, int, slice) v) inline { (slice, ((int, int))) $TokenBurnNotification$_load_bounced(slice sc_0) inline { throw_unless(129, sc_0~load_uint(32) == 2078119902); - var v'queryId = sc_0~load_uint(64); + var v'query_id = sc_0~load_uint(64); var v'amount = sc_0~load_coins(); - return (sc_0, (v'queryId, v'amount)); + return (sc_0, (v'query_id, v'amount)); } -((int, int, slice)) $TokenBurnNotification$_constructor_queryId_amount_response_destination(int queryId, int amount, slice response_destination) inline { - return (queryId, amount, response_destination); +((int, int, slice)) $TokenBurnNotification$_constructor_query_id_amount_response_destination(int query_id, int amount, slice response_destination) inline { + return (query_id, amount, response_destination); } ;; ;; Type: TokenExcesses ;; Header: 0xd53276db -;; TLB: token_excesses#d53276db queryId:uint64 = TokenExcesses +;; TLB: token_excesses#d53276db query_id:uint64 = TokenExcesses ;; builder $TokenExcesses$_store(builder build_0, (int) v) inline { - var (v'queryId) = v; + var (v'query_id) = v; build_0 = store_uint(build_0, 3576854235, 32); - build_0 = build_0.store_uint(v'queryId, 64); + build_0 = build_0.store_uint(v'query_id, 64); return build_0; } @@ -187,8 +197,45 @@ cell $TokenExcesses$_store_cell((int) v) inline { return $TokenExcesses$_store(begin_cell(), v).end_cell(); } -((int)) $TokenExcesses$_constructor_queryId(int queryId) inline { - return (queryId); +((int)) $TokenExcesses$_constructor_query_id(int query_id) inline { + return (query_id); +} + +;; +;; Type: ProvideWalletAddress +;; Header: 0x2c76b973 +;; TLB: provide_wallet_address#2c76b973 query_id:uint64 owner_address:address include_address:bool = ProvideWalletAddress +;; + +(slice, ((int, slice, int))) $ProvideWalletAddress$_load(slice sc_0) inline { + throw_unless(129, sc_0~load_uint(32) == 745978227); + var v'query_id = sc_0~load_uint(64); + var v'owner_address = sc_0~__tact_load_address(); + var v'include_address = sc_0~load_int(1); + return (sc_0, (v'query_id, v'owner_address, v'include_address)); +} + +;; +;; Type: TakeWalletAddress +;; Header: 0xd1735400 +;; TLB: take_wallet_address#d1735400 query_id:uint64 wallet_address:address owner_address:Maybe address = TakeWalletAddress +;; + +builder $TakeWalletAddress$_store(builder build_0, (int, slice, slice) v) inline { + var (v'query_id, v'wallet_address, v'owner_address) = v; + build_0 = store_uint(build_0, 3513996288, 32); + build_0 = build_0.store_uint(v'query_id, 64); + build_0 = __tact_store_address(build_0, v'wallet_address); + build_0 = __tact_store_address_opt(build_0, v'owner_address); + return build_0; +} + +cell $TakeWalletAddress$_store_cell((int, slice, slice) v) inline { + return $TakeWalletAddress$_store(begin_cell(), v).end_cell(); +} + +((int, slice, slice)) $TakeWalletAddress$_constructor_query_id_wallet_address_owner_address(int query_id, slice wallet_address, slice owner_address) inline { + return (query_id, wallet_address, owner_address); } ;; diff --git a/sources/output/SampleJetton_JettonDefaultWallet.ts b/sources/output/SampleJetton_JettonDefaultWallet.ts index c9d8f3c..8f8ea5f 100644 --- a/sources/output/SampleJetton_JettonDefaultWallet.ts +++ b/sources/output/SampleJetton_JettonDefaultWallet.ts @@ -13,6 +13,9 @@ import { Sender, Contract, ContractABI, + ABIType, + ABIGetter, + ABIReceiver, TupleBuilder, DictionaryValue } from 'ton-core'; @@ -283,50 +286,50 @@ function dictValueParserChangeOwnerOk(): DictionaryValue { export type JettonData = { $$type: 'JettonData'; - totalSupply: bigint; + total_supply: bigint; mintable: boolean; owner: Address; content: Cell; - walletCode: Cell; + wallet_code: Cell; } export function storeJettonData(src: JettonData) { return (builder: Builder) => { let b_0 = builder; - b_0.storeInt(src.totalSupply, 257); + b_0.storeInt(src.total_supply, 257); b_0.storeBit(src.mintable); b_0.storeAddress(src.owner); b_0.storeRef(src.content); - b_0.storeRef(src.walletCode); + b_0.storeRef(src.wallet_code); }; } export function loadJettonData(slice: Slice) { let sc_0 = slice; - let _totalSupply = sc_0.loadIntBig(257); + let _total_supply = sc_0.loadIntBig(257); let _mintable = sc_0.loadBit(); let _owner = sc_0.loadAddress(); let _content = sc_0.loadRef(); - let _walletCode = sc_0.loadRef(); - return { $$type: 'JettonData' as const, totalSupply: _totalSupply, mintable: _mintable, owner: _owner, content: _content, walletCode: _walletCode }; + let _wallet_code = sc_0.loadRef(); + return { $$type: 'JettonData' as const, total_supply: _total_supply, mintable: _mintable, owner: _owner, content: _content, wallet_code: _wallet_code }; } function loadTupleJettonData(source: TupleReader) { - let _totalSupply = source.readBigNumber(); + let _total_supply = source.readBigNumber(); let _mintable = source.readBoolean(); let _owner = source.readAddress(); let _content = source.readCell(); - let _walletCode = source.readCell(); - return { $$type: 'JettonData' as const, totalSupply: _totalSupply, mintable: _mintable, owner: _owner, content: _content, walletCode: _walletCode }; + let _wallet_code = source.readCell(); + return { $$type: 'JettonData' as const, total_supply: _total_supply, mintable: _mintable, owner: _owner, content: _content, wallet_code: _wallet_code }; } function storeTupleJettonData(source: JettonData) { let builder = new TupleBuilder(); - builder.writeNumber(source.totalSupply); + builder.writeNumber(source.total_supply); builder.writeBoolean(source.mintable); builder.writeAddress(source.owner); builder.writeCell(source.content); - builder.writeCell(source.walletCode); + builder.writeCell(source.wallet_code); return builder.build(); } @@ -346,7 +349,7 @@ export type JettonWalletData = { balance: bigint; owner: Address; master: Address; - walletCode: Cell; + wallet_code: Cell; } export function storeJettonWalletData(src: JettonWalletData) { @@ -355,7 +358,7 @@ export function storeJettonWalletData(src: JettonWalletData) { b_0.storeInt(src.balance, 257); b_0.storeAddress(src.owner); b_0.storeAddress(src.master); - b_0.storeRef(src.walletCode); + b_0.storeRef(src.wallet_code); }; } @@ -364,16 +367,16 @@ export function loadJettonWalletData(slice: Slice) { let _balance = sc_0.loadIntBig(257); let _owner = sc_0.loadAddress(); let _master = sc_0.loadAddress(); - let _walletCode = sc_0.loadRef(); - return { $$type: 'JettonWalletData' as const, balance: _balance, owner: _owner, master: _master, walletCode: _walletCode }; + let _wallet_code = sc_0.loadRef(); + return { $$type: 'JettonWalletData' as const, balance: _balance, owner: _owner, master: _master, wallet_code: _wallet_code }; } function loadTupleJettonWalletData(source: TupleReader) { let _balance = source.readBigNumber(); let _owner = source.readAddress(); let _master = source.readAddress(); - let _walletCode = source.readCell(); - return { $$type: 'JettonWalletData' as const, balance: _balance, owner: _owner, master: _master, walletCode: _walletCode }; + let _wallet_code = source.readCell(); + return { $$type: 'JettonWalletData' as const, balance: _balance, owner: _owner, master: _master, wallet_code: _wallet_code }; } function storeTupleJettonWalletData(source: JettonWalletData) { @@ -381,7 +384,7 @@ function storeTupleJettonWalletData(source: JettonWalletData) { builder.writeNumber(source.balance); builder.writeAddress(source.owner); builder.writeAddress(source.master); - builder.writeCell(source.walletCode); + builder.writeCell(source.wallet_code); return builder.build(); } @@ -398,7 +401,7 @@ function dictValueParserJettonWalletData(): DictionaryValue { export type TokenTransfer = { $$type: 'TokenTransfer'; - queryId: bigint; + query_id: bigint; amount: bigint; destination: Address; response_destination: Address; @@ -411,7 +414,7 @@ export function storeTokenTransfer(src: TokenTransfer) { return (builder: Builder) => { let b_0 = builder; b_0.storeUint(260734629, 32); - b_0.storeUint(src.queryId, 64); + b_0.storeUint(src.query_id, 64); b_0.storeCoins(src.amount); b_0.storeAddress(src.destination); b_0.storeAddress(src.response_destination); @@ -424,30 +427,30 @@ export function storeTokenTransfer(src: TokenTransfer) { export function loadTokenTransfer(slice: Slice) { let sc_0 = slice; if (sc_0.loadUint(32) !== 260734629) { throw Error('Invalid prefix'); } - let _queryId = sc_0.loadUintBig(64); + let _query_id = sc_0.loadUintBig(64); let _amount = sc_0.loadCoins(); let _destination = sc_0.loadAddress(); let _response_destination = sc_0.loadAddress(); let _custom_payload = sc_0.loadBit() ? sc_0.loadRef() : null; let _forward_ton_amount = sc_0.loadCoins(); let _forward_payload = sc_0.asCell(); - return { $$type: 'TokenTransfer' as const, queryId: _queryId, amount: _amount, destination: _destination, response_destination: _response_destination, custom_payload: _custom_payload, forward_ton_amount: _forward_ton_amount, forward_payload: _forward_payload }; + return { $$type: 'TokenTransfer' as const, query_id: _query_id, amount: _amount, destination: _destination, response_destination: _response_destination, custom_payload: _custom_payload, forward_ton_amount: _forward_ton_amount, forward_payload: _forward_payload }; } function loadTupleTokenTransfer(source: TupleReader) { - let _queryId = source.readBigNumber(); + let _query_id = source.readBigNumber(); let _amount = source.readBigNumber(); let _destination = source.readAddress(); let _response_destination = source.readAddress(); let _custom_payload = source.readCellOpt(); let _forward_ton_amount = source.readBigNumber(); let _forward_payload = source.readCell(); - return { $$type: 'TokenTransfer' as const, queryId: _queryId, amount: _amount, destination: _destination, response_destination: _response_destination, custom_payload: _custom_payload, forward_ton_amount: _forward_ton_amount, forward_payload: _forward_payload }; + return { $$type: 'TokenTransfer' as const, query_id: _query_id, amount: _amount, destination: _destination, response_destination: _response_destination, custom_payload: _custom_payload, forward_ton_amount: _forward_ton_amount, forward_payload: _forward_payload }; } function storeTupleTokenTransfer(source: TokenTransfer) { let builder = new TupleBuilder(); - builder.writeNumber(source.queryId); + builder.writeNumber(source.query_id); builder.writeNumber(source.amount); builder.writeAddress(source.destination); builder.writeAddress(source.response_destination); @@ -470,7 +473,7 @@ function dictValueParserTokenTransfer(): DictionaryValue { export type TokenTransferInternal = { $$type: 'TokenTransferInternal'; - queryId: bigint; + query_id: bigint; amount: bigint; from: Address; response_destination: Address; @@ -482,7 +485,7 @@ export function storeTokenTransferInternal(src: TokenTransferInternal) { return (builder: Builder) => { let b_0 = builder; b_0.storeUint(395134233, 32); - b_0.storeUint(src.queryId, 64); + b_0.storeUint(src.query_id, 64); b_0.storeCoins(src.amount); b_0.storeAddress(src.from); b_0.storeAddress(src.response_destination); @@ -494,28 +497,28 @@ export function storeTokenTransferInternal(src: TokenTransferInternal) { export function loadTokenTransferInternal(slice: Slice) { let sc_0 = slice; if (sc_0.loadUint(32) !== 395134233) { throw Error('Invalid prefix'); } - let _queryId = sc_0.loadUintBig(64); + let _query_id = sc_0.loadUintBig(64); let _amount = sc_0.loadCoins(); let _from = sc_0.loadAddress(); let _response_destination = sc_0.loadAddress(); let _forward_ton_amount = sc_0.loadCoins(); let _forward_payload = sc_0.asCell(); - return { $$type: 'TokenTransferInternal' as const, queryId: _queryId, amount: _amount, from: _from, response_destination: _response_destination, forward_ton_amount: _forward_ton_amount, forward_payload: _forward_payload }; + return { $$type: 'TokenTransferInternal' as const, query_id: _query_id, amount: _amount, from: _from, response_destination: _response_destination, forward_ton_amount: _forward_ton_amount, forward_payload: _forward_payload }; } function loadTupleTokenTransferInternal(source: TupleReader) { - let _queryId = source.readBigNumber(); + let _query_id = source.readBigNumber(); let _amount = source.readBigNumber(); let _from = source.readAddress(); let _response_destination = source.readAddress(); let _forward_ton_amount = source.readBigNumber(); let _forward_payload = source.readCell(); - return { $$type: 'TokenTransferInternal' as const, queryId: _queryId, amount: _amount, from: _from, response_destination: _response_destination, forward_ton_amount: _forward_ton_amount, forward_payload: _forward_payload }; + return { $$type: 'TokenTransferInternal' as const, query_id: _query_id, amount: _amount, from: _from, response_destination: _response_destination, forward_ton_amount: _forward_ton_amount, forward_payload: _forward_payload }; } function storeTupleTokenTransferInternal(source: TokenTransferInternal) { let builder = new TupleBuilder(); - builder.writeNumber(source.queryId); + builder.writeNumber(source.query_id); builder.writeNumber(source.amount); builder.writeAddress(source.from); builder.writeAddress(source.response_destination); @@ -537,7 +540,7 @@ function dictValueParserTokenTransferInternal(): DictionaryValue { let b_0 = builder; b_0.storeUint(1935855772, 32); - b_0.storeUint(src.queryId, 64); + b_0.storeUint(src.query_id, 64); b_0.storeCoins(src.amount); b_0.storeAddress(src.from); b_0.storeBuilder(src.forward_payload.asBuilder()); @@ -557,24 +560,24 @@ export function storeTokenNotification(src: TokenNotification) { export function loadTokenNotification(slice: Slice) { let sc_0 = slice; if (sc_0.loadUint(32) !== 1935855772) { throw Error('Invalid prefix'); } - let _queryId = sc_0.loadUintBig(64); + let _query_id = sc_0.loadUintBig(64); let _amount = sc_0.loadCoins(); let _from = sc_0.loadAddress(); let _forward_payload = sc_0.asCell(); - return { $$type: 'TokenNotification' as const, queryId: _queryId, amount: _amount, from: _from, forward_payload: _forward_payload }; + return { $$type: 'TokenNotification' as const, query_id: _query_id, amount: _amount, from: _from, forward_payload: _forward_payload }; } function loadTupleTokenNotification(source: TupleReader) { - let _queryId = source.readBigNumber(); + let _query_id = source.readBigNumber(); let _amount = source.readBigNumber(); let _from = source.readAddress(); let _forward_payload = source.readCell(); - return { $$type: 'TokenNotification' as const, queryId: _queryId, amount: _amount, from: _from, forward_payload: _forward_payload }; + return { $$type: 'TokenNotification' as const, query_id: _query_id, amount: _amount, from: _from, forward_payload: _forward_payload }; } function storeTupleTokenNotification(source: TokenNotification) { let builder = new TupleBuilder(); - builder.writeNumber(source.queryId); + builder.writeNumber(source.query_id); builder.writeNumber(source.amount); builder.writeAddress(source.from); builder.writeSlice(source.forward_payload); @@ -594,7 +597,7 @@ function dictValueParserTokenNotification(): DictionaryValue export type TokenBurn = { $$type: 'TokenBurn'; - queryId: bigint; + query_id: bigint; amount: bigint; response_destination: Address; custom_payload: Cell | null; @@ -604,7 +607,7 @@ export function storeTokenBurn(src: TokenBurn) { return (builder: Builder) => { let b_0 = builder; b_0.storeUint(1499400124, 32); - b_0.storeUint(src.queryId, 64); + b_0.storeUint(src.query_id, 64); b_0.storeCoins(src.amount); b_0.storeAddress(src.response_destination); if (src.custom_payload !== null && src.custom_payload !== undefined) { b_0.storeBit(true).storeRef(src.custom_payload); } else { b_0.storeBit(false); } @@ -614,24 +617,24 @@ export function storeTokenBurn(src: TokenBurn) { export function loadTokenBurn(slice: Slice) { let sc_0 = slice; if (sc_0.loadUint(32) !== 1499400124) { throw Error('Invalid prefix'); } - let _queryId = sc_0.loadUintBig(64); + let _query_id = sc_0.loadUintBig(64); let _amount = sc_0.loadCoins(); let _response_destination = sc_0.loadAddress(); let _custom_payload = sc_0.loadBit() ? sc_0.loadRef() : null; - return { $$type: 'TokenBurn' as const, queryId: _queryId, amount: _amount, response_destination: _response_destination, custom_payload: _custom_payload }; + return { $$type: 'TokenBurn' as const, query_id: _query_id, amount: _amount, response_destination: _response_destination, custom_payload: _custom_payload }; } function loadTupleTokenBurn(source: TupleReader) { - let _queryId = source.readBigNumber(); + let _query_id = source.readBigNumber(); let _amount = source.readBigNumber(); let _response_destination = source.readAddress(); let _custom_payload = source.readCellOpt(); - return { $$type: 'TokenBurn' as const, queryId: _queryId, amount: _amount, response_destination: _response_destination, custom_payload: _custom_payload }; + return { $$type: 'TokenBurn' as const, query_id: _query_id, amount: _amount, response_destination: _response_destination, custom_payload: _custom_payload }; } function storeTupleTokenBurn(source: TokenBurn) { let builder = new TupleBuilder(); - builder.writeNumber(source.queryId); + builder.writeNumber(source.query_id); builder.writeNumber(source.amount); builder.writeAddress(source.response_destination); builder.writeCell(source.custom_payload); @@ -651,7 +654,7 @@ function dictValueParserTokenBurn(): DictionaryValue { export type TokenBurnNotification = { $$type: 'TokenBurnNotification'; - queryId: bigint; + query_id: bigint; amount: bigint; response_destination: Address; } @@ -660,7 +663,7 @@ export function storeTokenBurnNotification(src: TokenBurnNotification) { return (builder: Builder) => { let b_0 = builder; b_0.storeUint(2078119902, 32); - b_0.storeUint(src.queryId, 64); + b_0.storeUint(src.query_id, 64); b_0.storeCoins(src.amount); b_0.storeAddress(src.response_destination); }; @@ -669,22 +672,22 @@ export function storeTokenBurnNotification(src: TokenBurnNotification) { export function loadTokenBurnNotification(slice: Slice) { let sc_0 = slice; if (sc_0.loadUint(32) !== 2078119902) { throw Error('Invalid prefix'); } - let _queryId = sc_0.loadUintBig(64); + let _query_id = sc_0.loadUintBig(64); let _amount = sc_0.loadCoins(); let _response_destination = sc_0.loadAddress(); - return { $$type: 'TokenBurnNotification' as const, queryId: _queryId, amount: _amount, response_destination: _response_destination }; + return { $$type: 'TokenBurnNotification' as const, query_id: _query_id, amount: _amount, response_destination: _response_destination }; } function loadTupleTokenBurnNotification(source: TupleReader) { - let _queryId = source.readBigNumber(); + let _query_id = source.readBigNumber(); let _amount = source.readBigNumber(); let _response_destination = source.readAddress(); - return { $$type: 'TokenBurnNotification' as const, queryId: _queryId, amount: _amount, response_destination: _response_destination }; + return { $$type: 'TokenBurnNotification' as const, query_id: _query_id, amount: _amount, response_destination: _response_destination }; } function storeTupleTokenBurnNotification(source: TokenBurnNotification) { let builder = new TupleBuilder(); - builder.writeNumber(source.queryId); + builder.writeNumber(source.query_id); builder.writeNumber(source.amount); builder.writeAddress(source.response_destination); return builder.build(); @@ -703,32 +706,32 @@ function dictValueParserTokenBurnNotification(): DictionaryValue { let b_0 = builder; b_0.storeUint(3576854235, 32); - b_0.storeUint(src.queryId, 64); + b_0.storeUint(src.query_id, 64); }; } export function loadTokenExcesses(slice: Slice) { let sc_0 = slice; if (sc_0.loadUint(32) !== 3576854235) { throw Error('Invalid prefix'); } - let _queryId = sc_0.loadUintBig(64); - return { $$type: 'TokenExcesses' as const, queryId: _queryId }; + let _query_id = sc_0.loadUintBig(64); + return { $$type: 'TokenExcesses' as const, query_id: _query_id }; } function loadTupleTokenExcesses(source: TupleReader) { - let _queryId = source.readBigNumber(); - return { $$type: 'TokenExcesses' as const, queryId: _queryId }; + let _query_id = source.readBigNumber(); + return { $$type: 'TokenExcesses' as const, query_id: _query_id }; } function storeTupleTokenExcesses(source: TokenExcesses) { let builder = new TupleBuilder(); - builder.writeNumber(source.queryId); + builder.writeNumber(source.query_id); return builder.build(); } @@ -785,6 +788,110 @@ function dictValueParserTokenUpdateContent(): DictionaryValue { + let b_0 = builder; + b_0.storeUint(745978227, 32); + b_0.storeUint(src.query_id, 64); + b_0.storeAddress(src.owner_address); + b_0.storeBit(src.include_address); + }; +} + +export function loadProvideWalletAddress(slice: Slice) { + let sc_0 = slice; + if (sc_0.loadUint(32) !== 745978227) { throw Error('Invalid prefix'); } + let _query_id = sc_0.loadUintBig(64); + let _owner_address = sc_0.loadAddress(); + let _include_address = sc_0.loadBit(); + return { $$type: 'ProvideWalletAddress' as const, query_id: _query_id, owner_address: _owner_address, include_address: _include_address }; +} + +function loadTupleProvideWalletAddress(source: TupleReader) { + let _query_id = source.readBigNumber(); + let _owner_address = source.readAddress(); + let _include_address = source.readBoolean(); + return { $$type: 'ProvideWalletAddress' as const, query_id: _query_id, owner_address: _owner_address, include_address: _include_address }; +} + +function storeTupleProvideWalletAddress(source: ProvideWalletAddress) { + let builder = new TupleBuilder(); + builder.writeNumber(source.query_id); + builder.writeAddress(source.owner_address); + builder.writeBoolean(source.include_address); + return builder.build(); +} + +function dictValueParserProvideWalletAddress(): DictionaryValue { + return { + serialize: (src, buidler) => { + buidler.storeRef(beginCell().store(storeProvideWalletAddress(src)).endCell()); + }, + parse: (src) => { + return loadProvideWalletAddress(src.loadRef().beginParse()); + } + } +} + +export type TakeWalletAddress = { + $$type: 'TakeWalletAddress'; + query_id: bigint; + wallet_address: Address; + owner_address: Address | null; +} + +export function storeTakeWalletAddress(src: TakeWalletAddress) { + return (builder: Builder) => { + let b_0 = builder; + b_0.storeUint(3513996288, 32); + b_0.storeUint(src.query_id, 64); + b_0.storeAddress(src.wallet_address); + b_0.storeAddress(src.owner_address); + }; +} + +export function loadTakeWalletAddress(slice: Slice) { + let sc_0 = slice; + if (sc_0.loadUint(32) !== 3513996288) { throw Error('Invalid prefix'); } + let _query_id = sc_0.loadUintBig(64); + let _wallet_address = sc_0.loadAddress(); + let _owner_address = sc_0.loadMaybeAddress(); + return { $$type: 'TakeWalletAddress' as const, query_id: _query_id, wallet_address: _wallet_address, owner_address: _owner_address }; +} + +function loadTupleTakeWalletAddress(source: TupleReader) { + let _query_id = source.readBigNumber(); + let _wallet_address = source.readAddress(); + let _owner_address = source.readAddressOpt(); + return { $$type: 'TakeWalletAddress' as const, query_id: _query_id, wallet_address: _wallet_address, owner_address: _owner_address }; +} + +function storeTupleTakeWalletAddress(source: TakeWalletAddress) { + let builder = new TupleBuilder(); + builder.writeNumber(source.query_id); + builder.writeAddress(source.wallet_address); + builder.writeAddress(source.owner_address); + return builder.build(); +} + +function dictValueParserTakeWalletAddress(): DictionaryValue { + return { + serialize: (src, buidler) => { + buidler.storeRef(beginCell().store(storeTakeWalletAddress(src)).endCell()); + }, + parse: (src) => { + return loadTakeWalletAddress(src.loadRef().beginParse()); + } + } +} + export type Mint = { $$type: 'Mint'; amount: bigint; @@ -847,8 +954,8 @@ function initJettonDefaultWallet_init_args(src: JettonDefaultWallet_init_args) { } async function JettonDefaultWallet_init(master: Address, owner: Address) { - const __code = Cell.fromBase64('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'); - const __system = Cell.fromBase64('te6cckECIwEAB+cAAQHAAQEFobFfAgEU/wD0pBP0vPLICwMCAWIOBAIBIAwFAgEgCwYCAUgIBwB1sm7jQ1aXBmczovL1FtVkQ0bloyQ1hDUmljY1ZNSHA0MmV1Z0hMN0tKQ3A3ZzhUZ0ozRzdxOVd1NW6CACA3igCgkAD7vu1E0NIAAYAhO5LbPFUC2zxsMYIBUAubu9GCcFzsPV0srnsehOw51kqFG2aCcJ3WNS0rZHyzItOvLf3xYjmCcCBVwBuAZ2OUzlg6rkclssOCcJ2XTlqzTstzOg6WbZRm6KSCcJ3R4APls2A8n8g6slmsohOAIRv9gW2ebZ42GkIA0BGPhDUxLbPDBUYzBSMB0DetAB0NMDAXGwowH6QAEg10mBAQu68uCIINcLCiCBBP+68tCJgwm68uCIVFBTA28E+GEC+GLbPFUS2zzy4IIgEA8Apsj4QwHMfwHKAFUgUCOBAQHPAAEg10mBAQu68uCIINcLCiCBBP+68tCJgwm68uCIzxYBINdJgQELuvLgiCDXCwoggQT/uvLQiYMJuvLgiM8Wye1UAu4BjluAINchcCHXScIflTAg1wsf3iCCEBeNRRm6jhow0x8BghAXjUUZuvLggdM/+gBZbBIxE6ACf+CCEHvdl966jhnTHwGCEHvdl9668uCB0z/6AFlsEjEToAJ/4DB/4HAh10nCH5UwINcLH94gghAPin6luuMCIBcRA7iCEBeNRRm6jwgw2zxsFts8f+CCEFlfB7y6jr7THwGCEFlfB7y68uCB0z/6APpAASDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IgB0gABkdSSbQHiVTBsFOAwcBYTEgL4W/hBbySBEU1Tg8cF8vRRhKGCAPX8IcL/8vRDMFI52zyCAKmeAYIJMS0AoIIImJaAoBK88vRwgEADf1E2yFUgghB73ZfeUATLHxLLPwH6AgEg10mBAQu68uCIINcLCiCBBP+68tCJgwm68uCIzxbJJEQUUDMUQzBtbds8fx4aBPb4QW8kU6LHBbOO0/hDU7jbPAGCAKbUAnBZyHABywFzAcsBcAHLABLMzMn5AMhyAcsBcAHLABLKB8v/ydAg10mBAQu68uCIINcLCiCBBP+68tCJgwm68uCIUkDHBfL03lHIoIIA9fwhwv/y9EC6K9s8EDRLzds8UaOhUAodFR4UAvahIsIAjspzcChIE1B0yFUwghBzYtCcUAXLHxPLPwH6AgEg10mBAQu68uCIINcLCiCBBP+68tCJgwm68uCIzxYBzxbJJ0YUUFUUQzBtbds8AZQQNWxB4iFus46bcAPIAYIQ1TJ221jLH8s/yUEwchAkQwBtbds8kl8D4gEaGgAs+CdvECGhggiYloBmtgihggiYloCgoQCy0x8BghAXjUUZuvLggdM/+gD6QAEg10mBAQu68uCIINcLCiCBBP+68tCJgwm68uCIAfpAASDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IgB+gBRVRUUQzACEDDbPGwX2zx/HxgEijL4QW8kgRFNU8PHBfL0VHMhI9s8RDBSRNs8oIIJycOAAaCBED8BggiYloC2CBK88vRRhKGCAPX8IcL/8vT4Q1Qgdds8XB4eHRkCwnBZyHABywFzAcsBcAHLABLMzMn5AMhyAcsBcAHLABLKB8v/ydAg10mBAQu68uCIINcLCiCBBP+68tCJgwm68uCIUHZwgEB/LEgTUOfIVVDbPMkQVl4iEDkCEDYQNRA02zwcGgHKyHEBygFQBwHKAHABygJQBSDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IjPFlAD+gJwAcpoI26zkX+TJG6z4pczMwFwAcoA4w0hbrOcfwHKAAEgbvLQgAHMlTFwAcoA4skB+wAbAJh/AcoAyHABygBwAcoAJG6znX8BygAEIG7y0IBQBMyWNANwAcoA4iRus51/AcoABCBu8tCAUATMljQDcAHKAOJwAcoAAn8BygACyVjMAKqCEBeNRRlQB8sfFcs/UAP6AgEg10mBAQu68uCIINcLCiCBBP+68tCJgwm68uCIzxYBINdJgQELuvLgiCDXCwoggQT/uvLQiYMJuvLgiM8WAfoCAc8WANoC0PQEMG0BggDYrwGAEPQPb6Hy4IcBggDYryICgBD0F8gByPQAyQHMcAHKAEADWSDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IjPFgEg10mBAQu68uCIINcLCiCBBP+68tCJgwm68uCIzxbJAGRsMfpAASDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4Igw+gAxcdch+gAx+gAwpwOrAADG0x8BghAPin6luvLggdM/+gD6QAEg10mBAQu68uCIINcLCiCBBP+68tCJgwm68uCIAfpAASDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IgB0gABkdSSbQHi+gBRZhYVFEMwAcDtRNDUAfhj0gABjkiBAQHXAPpAASDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IgB+kABINdJgQELuvLgiCDXCwoggQT/uvLQiYMJuvLgiEMwbBPg+CjXCwqDCbry4IkhAYr6QAEg10mBAQu68uCIINcLCiCBBP+68tCJgwm68uCIAfpAASDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IgSAtEB2zwiAARwAtKkMS8='); + const __code = Cell.fromBase64('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'); + const __system = Cell.fromBase64('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'); let builder = beginCell(); builder.storeRef(__system); builder.storeUint(0, 1); @@ -882,16 +989,50 @@ const JettonDefaultWallet_errors: { [key: number]: { message: string } } = { 135: { message: `Code of a contract was not found` }, 136: { message: `Invalid address` }, 137: { message: `Masterchain support is not enabled for this contract` }, - 3734: { message: `Not Owner` }, + 3688: { message: `Not mintable` }, 4159: { message: `Invalid value!!` }, 4429: { message: `Invalid sender` }, - 6898: { message: `The total supply will be overlapping.` }, + 12241: { message: `Max supply exceeded` }, + 14534: { message: `Not owner` }, 18668: { message: `Can't Mint Anymore` }, + 23951: { message: `Insufficient gas` }, 42708: { message: `Invalid sender!` }, 43422: { message: `Invalid value - Burn` }, 62972: { message: `Invalid balance` }, } +const JettonDefaultWallet_types: ABIType[] = [ + {"name":"StateInit","header":null,"fields":[{"name":"code","type":{"kind":"simple","type":"cell","optional":false}},{"name":"data","type":{"kind":"simple","type":"cell","optional":false}}]}, + {"name":"Context","header":null,"fields":[{"name":"bounced","type":{"kind":"simple","type":"bool","optional":false}},{"name":"sender","type":{"kind":"simple","type":"address","optional":false}},{"name":"value","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"raw","type":{"kind":"simple","type":"slice","optional":false}}]}, + {"name":"SendParameters","header":null,"fields":[{"name":"bounce","type":{"kind":"simple","type":"bool","optional":false}},{"name":"to","type":{"kind":"simple","type":"address","optional":false}},{"name":"value","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"mode","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"body","type":{"kind":"simple","type":"cell","optional":true}},{"name":"code","type":{"kind":"simple","type":"cell","optional":true}},{"name":"data","type":{"kind":"simple","type":"cell","optional":true}}]}, + {"name":"ChangeOwner","header":2174598809,"fields":[{"name":"queryId","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"newOwner","type":{"kind":"simple","type":"address","optional":false}}]}, + {"name":"ChangeOwnerOk","header":846932810,"fields":[{"name":"queryId","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"newOwner","type":{"kind":"simple","type":"address","optional":false}}]}, + {"name":"JettonData","header":null,"fields":[{"name":"total_supply","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"mintable","type":{"kind":"simple","type":"bool","optional":false}},{"name":"owner","type":{"kind":"simple","type":"address","optional":false}},{"name":"content","type":{"kind":"simple","type":"cell","optional":false}},{"name":"wallet_code","type":{"kind":"simple","type":"cell","optional":false}}]}, + {"name":"JettonWalletData","header":null,"fields":[{"name":"balance","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"owner","type":{"kind":"simple","type":"address","optional":false}},{"name":"master","type":{"kind":"simple","type":"address","optional":false}},{"name":"wallet_code","type":{"kind":"simple","type":"cell","optional":false}}]}, + {"name":"TokenTransfer","header":260734629,"fields":[{"name":"query_id","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"destination","type":{"kind":"simple","type":"address","optional":false}},{"name":"response_destination","type":{"kind":"simple","type":"address","optional":false}},{"name":"custom_payload","type":{"kind":"simple","type":"cell","optional":true}},{"name":"forward_ton_amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"forward_payload","type":{"kind":"simple","type":"slice","optional":false,"format":"remainder"}}]}, + {"name":"TokenTransferInternal","header":395134233,"fields":[{"name":"query_id","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"from","type":{"kind":"simple","type":"address","optional":false}},{"name":"response_destination","type":{"kind":"simple","type":"address","optional":false}},{"name":"forward_ton_amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"forward_payload","type":{"kind":"simple","type":"slice","optional":false,"format":"remainder"}}]}, + {"name":"TokenNotification","header":1935855772,"fields":[{"name":"query_id","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"from","type":{"kind":"simple","type":"address","optional":false}},{"name":"forward_payload","type":{"kind":"simple","type":"slice","optional":false,"format":"remainder"}}]}, + {"name":"TokenBurn","header":1499400124,"fields":[{"name":"query_id","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"response_destination","type":{"kind":"simple","type":"address","optional":false}},{"name":"custom_payload","type":{"kind":"simple","type":"cell","optional":true}}]}, + {"name":"TokenBurnNotification","header":2078119902,"fields":[{"name":"query_id","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"response_destination","type":{"kind":"simple","type":"address","optional":false}}]}, + {"name":"TokenExcesses","header":3576854235,"fields":[{"name":"query_id","type":{"kind":"simple","type":"uint","optional":false,"format":64}}]}, + {"name":"TokenUpdateContent","header":2937889386,"fields":[{"name":"content","type":{"kind":"simple","type":"cell","optional":false}}]}, + {"name":"ProvideWalletAddress","header":745978227,"fields":[{"name":"query_id","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"owner_address","type":{"kind":"simple","type":"address","optional":false}},{"name":"include_address","type":{"kind":"simple","type":"bool","optional":false}}]}, + {"name":"TakeWalletAddress","header":3513996288,"fields":[{"name":"query_id","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"wallet_address","type":{"kind":"simple","type":"address","optional":false}},{"name":"owner_address","type":{"kind":"simple","type":"address","optional":true}}]}, + {"name":"Mint","header":4235234258,"fields":[{"name":"amount","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"receiver","type":{"kind":"simple","type":"address","optional":false}}]}, +] + +const JettonDefaultWallet_getters: ABIGetter[] = [ + {"name":"msg_value","arguments":[{"name":"value","type":{"kind":"simple","type":"int","optional":false,"format":257}}],"returnType":{"kind":"simple","type":"int","optional":false,"format":257}}, + {"name":"get_wallet_data","arguments":[],"returnType":{"kind":"simple","type":"JettonWalletData","optional":false}}, +] + +const JettonDefaultWallet_receivers: ABIReceiver[] = [ + {"receiver":"internal","message":{"kind":"typed","type":"TokenTransfer"}}, + {"receiver":"internal","message":{"kind":"typed","type":"TokenTransferInternal"}}, + {"receiver":"internal","message":{"kind":"typed","type":"TokenBurn"}}, + {"receiver":"internal","message":{"kind":"typed","type":"ProvideWalletAddress"}}, +] + export class JettonDefaultWallet implements Contract { static async init(master: Address, owner: Address) { @@ -911,7 +1052,10 @@ export class JettonDefaultWallet implements Contract { readonly address: Address; readonly init?: { code: Cell, data: Cell }; readonly abi: ContractABI = { - errors: JettonDefaultWallet_errors + types: JettonDefaultWallet_types, + getters: JettonDefaultWallet_getters, + receivers: JettonDefaultWallet_receivers, + errors: JettonDefaultWallet_errors, }; private constructor(address: Address, init?: { code: Cell, data: Cell }) { @@ -919,7 +1063,7 @@ export class JettonDefaultWallet implements Contract { this.init = init; } - async send(provider: ContractProvider, via: Sender, args: { value: bigint, bounce?: boolean| null | undefined }, message: TokenTransfer | TokenTransferInternal | TokenBurn) { + async send(provider: ContractProvider, via: Sender, args: { value: bigint, bounce?: boolean| null | undefined }, message: TokenTransfer | TokenTransferInternal | TokenBurn | ProvideWalletAddress) { let body: Cell | null = null; if (message && typeof message === 'object' && !(message instanceof Slice) && message.$$type === 'TokenTransfer') { @@ -931,6 +1075,9 @@ export class JettonDefaultWallet implements Contract { if (message && typeof message === 'object' && !(message instanceof Slice) && message.$$type === 'TokenBurn') { body = beginCell().store(storeTokenBurn(message)).endCell(); } + if (message && typeof message === 'object' && !(message instanceof Slice) && message.$$type === 'ProvideWalletAddress') { + body = beginCell().store(storeProvideWalletAddress(message)).endCell(); + } if (body === null) { throw new Error('Invalid message type'); } await provider.internal(via, { ...args, body: body }); @@ -940,7 +1087,7 @@ export class JettonDefaultWallet implements Contract { async getMsgValue(provider: ContractProvider, value: bigint) { let builder = new TupleBuilder(); builder.writeNumber(value); - let source = (await provider.get('msgValue', builder.build())).stack; + let source = (await provider.get('msg_value', builder.build())).stack; let result = source.readBigNumber(); return result; } diff --git a/sources/output/SampleJetton_SampleJetton.abi b/sources/output/SampleJetton_SampleJetton.abi index af9e6eb..7ffb8a4 100644 --- a/sources/output/SampleJetton_SampleJetton.abi +++ b/sources/output/SampleJetton_SampleJetton.abi @@ -1 +1 @@ -{"name":"SampleJetton","types":[{"name":"StateInit","header":null,"fields":[{"name":"code","type":{"kind":"simple","type":"cell","optional":false}},{"name":"data","type":{"kind":"simple","type":"cell","optional":false}}]},{"name":"Context","header":null,"fields":[{"name":"bounced","type":{"kind":"simple","type":"bool","optional":false}},{"name":"sender","type":{"kind":"simple","type":"address","optional":false}},{"name":"value","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"raw","type":{"kind":"simple","type":"slice","optional":false}}]},{"name":"SendParameters","header":null,"fields":[{"name":"bounce","type":{"kind":"simple","type":"bool","optional":false}},{"name":"to","type":{"kind":"simple","type":"address","optional":false}},{"name":"value","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"mode","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"body","type":{"kind":"simple","type":"cell","optional":true}},{"name":"code","type":{"kind":"simple","type":"cell","optional":true}},{"name":"data","type":{"kind":"simple","type":"cell","optional":true}}]},{"name":"ChangeOwner","header":2174598809,"fields":[{"name":"queryId","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"newOwner","type":{"kind":"simple","type":"address","optional":false}}]},{"name":"ChangeOwnerOk","header":846932810,"fields":[{"name":"queryId","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"newOwner","type":{"kind":"simple","type":"address","optional":false}}]},{"name":"JettonData","header":null,"fields":[{"name":"totalSupply","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"mintable","type":{"kind":"simple","type":"bool","optional":false}},{"name":"owner","type":{"kind":"simple","type":"address","optional":false}},{"name":"content","type":{"kind":"simple","type":"cell","optional":false}},{"name":"walletCode","type":{"kind":"simple","type":"cell","optional":false}}]},{"name":"JettonWalletData","header":null,"fields":[{"name":"balance","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"owner","type":{"kind":"simple","type":"address","optional":false}},{"name":"master","type":{"kind":"simple","type":"address","optional":false}},{"name":"walletCode","type":{"kind":"simple","type":"cell","optional":false}}]},{"name":"TokenTransfer","header":260734629,"fields":[{"name":"queryId","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"destination","type":{"kind":"simple","type":"address","optional":false}},{"name":"response_destination","type":{"kind":"simple","type":"address","optional":false}},{"name":"custom_payload","type":{"kind":"simple","type":"cell","optional":true}},{"name":"forward_ton_amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"forward_payload","type":{"kind":"simple","type":"slice","optional":false,"format":"remainder"}}]},{"name":"TokenTransferInternal","header":395134233,"fields":[{"name":"queryId","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"from","type":{"kind":"simple","type":"address","optional":false}},{"name":"response_destination","type":{"kind":"simple","type":"address","optional":false}},{"name":"forward_ton_amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"forward_payload","type":{"kind":"simple","type":"slice","optional":false,"format":"remainder"}}]},{"name":"TokenNotification","header":1935855772,"fields":[{"name":"queryId","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"from","type":{"kind":"simple","type":"address","optional":false}},{"name":"forward_payload","type":{"kind":"simple","type":"slice","optional":false,"format":"remainder"}}]},{"name":"TokenBurn","header":1499400124,"fields":[{"name":"queryId","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"response_destination","type":{"kind":"simple","type":"address","optional":false}},{"name":"custom_payload","type":{"kind":"simple","type":"cell","optional":true}}]},{"name":"TokenBurnNotification","header":2078119902,"fields":[{"name":"queryId","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"response_destination","type":{"kind":"simple","type":"address","optional":false}}]},{"name":"TokenExcesses","header":3576854235,"fields":[{"name":"queryId","type":{"kind":"simple","type":"uint","optional":false,"format":64}}]},{"name":"TokenUpdateContent","header":2937889386,"fields":[{"name":"content","type":{"kind":"simple","type":"cell","optional":false}}]},{"name":"Mint","header":4235234258,"fields":[{"name":"amount","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"receiver","type":{"kind":"simple","type":"address","optional":false}}]}],"receivers":[{"receiver":"internal","message":{"kind":"typed","type":"Mint"}},{"receiver":"internal","message":{"kind":"text","text":"Mint: 100"}},{"receiver":"internal","message":{"kind":"text","text":"Owner: MintClose"}},{"receiver":"internal","message":{"kind":"typed","type":"TokenUpdateContent"}},{"receiver":"internal","message":{"kind":"typed","type":"TokenBurnNotification"}}],"getters":[{"name":"get_jetton_data","arguments":[],"returnType":{"kind":"simple","type":"JettonData","optional":false}},{"name":"get_wallet_address","arguments":[{"name":"owner","type":{"kind":"simple","type":"address","optional":false}}],"returnType":{"kind":"simple","type":"address","optional":false}},{"name":"owner","arguments":[],"returnType":{"kind":"simple","type":"address","optional":false}}],"errors":{"2":{"message":"Stack undeflow"},"3":{"message":"Stack overflow"},"4":{"message":"Integer overflow"},"5":{"message":"Integer out of expected range"},"6":{"message":"Invalid opcode"},"7":{"message":"Type check error"},"8":{"message":"Cell overflow"},"9":{"message":"Cell underflow"},"10":{"message":"Dictionary error"},"13":{"message":"Out of gas error"},"32":{"message":"Method ID not found"},"34":{"message":"Action is invalid or not supported"},"37":{"message":"Not enough TON"},"38":{"message":"Not enough extra-currencies"},"128":{"message":"Null reference exception"},"129":{"message":"Invalid serialization prefix"},"130":{"message":"Invalid incoming message"},"131":{"message":"Constraints error"},"132":{"message":"Access denied"},"133":{"message":"Contract stopped"},"134":{"message":"Invalid argument"},"135":{"message":"Code of a contract was not found"},"136":{"message":"Invalid address"},"137":{"message":"Masterchain support is not enabled for this contract"},"3734":{"message":"Not Owner"},"4159":{"message":"Invalid value!!"},"4429":{"message":"Invalid sender"},"6898":{"message":"The total supply will be overlapping."},"18668":{"message":"Can't Mint Anymore"},"42708":{"message":"Invalid sender!"},"43422":{"message":"Invalid value - Burn"},"62972":{"message":"Invalid balance"}},"interfaces":["org.ton.introspection.v0","org.ton.abi.ipfs.v0","org.ton.deploy.lazy.v0","org.ton.chain.workchain.v0","org.ton.jetton.master","org.ton.ownable"]} \ No newline at end of file +{"name":"SampleJetton","types":[{"name":"StateInit","header":null,"fields":[{"name":"code","type":{"kind":"simple","type":"cell","optional":false}},{"name":"data","type":{"kind":"simple","type":"cell","optional":false}}]},{"name":"Context","header":null,"fields":[{"name":"bounced","type":{"kind":"simple","type":"bool","optional":false}},{"name":"sender","type":{"kind":"simple","type":"address","optional":false}},{"name":"value","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"raw","type":{"kind":"simple","type":"slice","optional":false}}]},{"name":"SendParameters","header":null,"fields":[{"name":"bounce","type":{"kind":"simple","type":"bool","optional":false}},{"name":"to","type":{"kind":"simple","type":"address","optional":false}},{"name":"value","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"mode","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"body","type":{"kind":"simple","type":"cell","optional":true}},{"name":"code","type":{"kind":"simple","type":"cell","optional":true}},{"name":"data","type":{"kind":"simple","type":"cell","optional":true}}]},{"name":"ChangeOwner","header":2174598809,"fields":[{"name":"queryId","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"newOwner","type":{"kind":"simple","type":"address","optional":false}}]},{"name":"ChangeOwnerOk","header":846932810,"fields":[{"name":"queryId","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"newOwner","type":{"kind":"simple","type":"address","optional":false}}]},{"name":"JettonData","header":null,"fields":[{"name":"total_supply","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"mintable","type":{"kind":"simple","type":"bool","optional":false}},{"name":"owner","type":{"kind":"simple","type":"address","optional":false}},{"name":"content","type":{"kind":"simple","type":"cell","optional":false}},{"name":"wallet_code","type":{"kind":"simple","type":"cell","optional":false}}]},{"name":"JettonWalletData","header":null,"fields":[{"name":"balance","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"owner","type":{"kind":"simple","type":"address","optional":false}},{"name":"master","type":{"kind":"simple","type":"address","optional":false}},{"name":"wallet_code","type":{"kind":"simple","type":"cell","optional":false}}]},{"name":"TokenTransfer","header":260734629,"fields":[{"name":"query_id","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"destination","type":{"kind":"simple","type":"address","optional":false}},{"name":"response_destination","type":{"kind":"simple","type":"address","optional":false}},{"name":"custom_payload","type":{"kind":"simple","type":"cell","optional":true}},{"name":"forward_ton_amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"forward_payload","type":{"kind":"simple","type":"slice","optional":false,"format":"remainder"}}]},{"name":"TokenTransferInternal","header":395134233,"fields":[{"name":"query_id","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"from","type":{"kind":"simple","type":"address","optional":false}},{"name":"response_destination","type":{"kind":"simple","type":"address","optional":false}},{"name":"forward_ton_amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"forward_payload","type":{"kind":"simple","type":"slice","optional":false,"format":"remainder"}}]},{"name":"TokenNotification","header":1935855772,"fields":[{"name":"query_id","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"from","type":{"kind":"simple","type":"address","optional":false}},{"name":"forward_payload","type":{"kind":"simple","type":"slice","optional":false,"format":"remainder"}}]},{"name":"TokenBurn","header":1499400124,"fields":[{"name":"query_id","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"response_destination","type":{"kind":"simple","type":"address","optional":false}},{"name":"custom_payload","type":{"kind":"simple","type":"cell","optional":true}}]},{"name":"TokenBurnNotification","header":2078119902,"fields":[{"name":"query_id","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"response_destination","type":{"kind":"simple","type":"address","optional":false}}]},{"name":"TokenExcesses","header":3576854235,"fields":[{"name":"query_id","type":{"kind":"simple","type":"uint","optional":false,"format":64}}]},{"name":"TokenUpdateContent","header":2937889386,"fields":[{"name":"content","type":{"kind":"simple","type":"cell","optional":false}}]},{"name":"ProvideWalletAddress","header":745978227,"fields":[{"name":"query_id","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"owner_address","type":{"kind":"simple","type":"address","optional":false}},{"name":"include_address","type":{"kind":"simple","type":"bool","optional":false}}]},{"name":"TakeWalletAddress","header":3513996288,"fields":[{"name":"query_id","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"wallet_address","type":{"kind":"simple","type":"address","optional":false}},{"name":"owner_address","type":{"kind":"simple","type":"address","optional":true}}]},{"name":"Mint","header":4235234258,"fields":[{"name":"amount","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"receiver","type":{"kind":"simple","type":"address","optional":false}}]}],"receivers":[{"receiver":"internal","message":{"kind":"typed","type":"Mint"}},{"receiver":"internal","message":{"kind":"text","text":"Mint: 100"}},{"receiver":"internal","message":{"kind":"text","text":"Owner: MintClose"}},{"receiver":"internal","message":{"kind":"typed","type":"TokenUpdateContent"}},{"receiver":"internal","message":{"kind":"typed","type":"TokenBurnNotification"}}],"getters":[{"name":"get_jetton_data","arguments":[],"returnType":{"kind":"simple","type":"JettonData","optional":false}},{"name":"get_wallet_address","arguments":[{"name":"owner","type":{"kind":"simple","type":"address","optional":false}}],"returnType":{"kind":"simple","type":"address","optional":false}},{"name":"owner","arguments":[],"returnType":{"kind":"simple","type":"address","optional":false}}],"errors":{"2":{"message":"Stack undeflow"},"3":{"message":"Stack overflow"},"4":{"message":"Integer overflow"},"5":{"message":"Integer out of expected range"},"6":{"message":"Invalid opcode"},"7":{"message":"Type check error"},"8":{"message":"Cell overflow"},"9":{"message":"Cell underflow"},"10":{"message":"Dictionary error"},"13":{"message":"Out of gas error"},"32":{"message":"Method ID not found"},"34":{"message":"Action is invalid or not supported"},"37":{"message":"Not enough TON"},"38":{"message":"Not enough extra-currencies"},"128":{"message":"Null reference exception"},"129":{"message":"Invalid serialization prefix"},"130":{"message":"Invalid incoming message"},"131":{"message":"Constraints error"},"132":{"message":"Access denied"},"133":{"message":"Contract stopped"},"134":{"message":"Invalid argument"},"135":{"message":"Code of a contract was not found"},"136":{"message":"Invalid address"},"137":{"message":"Masterchain support is not enabled for this contract"},"3688":{"message":"Not mintable"},"4159":{"message":"Invalid value!!"},"4429":{"message":"Invalid sender"},"12241":{"message":"Max supply exceeded"},"14534":{"message":"Not owner"},"18668":{"message":"Can't Mint Anymore"},"23951":{"message":"Insufficient gas"},"42708":{"message":"Invalid sender!"},"43422":{"message":"Invalid value - Burn"},"62972":{"message":"Invalid balance"}},"interfaces":["org.ton.introspection.v0","org.ton.abi.ipfs.v0","org.ton.deploy.lazy.v0","org.ton.chain.workchain.v0","org.ton.jetton.master","org.ton.ownable"]} \ No newline at end of file diff --git a/sources/output/SampleJetton_SampleJetton.code.boc b/sources/output/SampleJetton_SampleJetton.code.boc index 7827fb2..249906a 100644 Binary files a/sources/output/SampleJetton_SampleJetton.code.boc and b/sources/output/SampleJetton_SampleJetton.code.boc differ diff --git a/sources/output/SampleJetton_SampleJetton.code.fc b/sources/output/SampleJetton_SampleJetton.code.fc index d39cfcf..13ff894 100644 --- a/sources/output/SampleJetton_SampleJetton.code.fc +++ b/sources/output/SampleJetton_SampleJetton.code.fc @@ -10,59 +10,59 @@ ;; Contract SampleJetton functions ;; -(int, slice, cell, int, int) $SampleJetton$_contract_init(slice $owner, cell $content, int $maxSupply) impure inline_ref { - var (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'maxSupply)) = (null(), null(), null(), null(), null()); - $self'totalSupply = 0; +(int, slice, cell, int, int) $SampleJetton$_contract_init(slice $owner, cell $content, int $max_supply) impure inline_ref { + var (($self'total_supply, $self'owner, $self'content, $self'mintable, $self'max_supply)) = (null(), null(), null(), null(), null()); + $self'total_supply = 0; $self'owner = $owner; $self'mintable = true; $self'content = $content; - $self'maxSupply = $maxSupply; - return ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'maxSupply); + $self'max_supply = $max_supply; + return ($self'total_supply, $self'owner, $self'content, $self'mintable, $self'max_supply); } ((int, slice, cell, int, int), (cell, cell)) $SampleJetton$_fun_getJettonWalletInit((int, slice, cell, int, int) $self, slice $address) impure inline_ref { - var (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'maxSupply)) = $self; - return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'maxSupply), $JettonDefaultWallet$_init_child(__tact_context_sys, my_address(), $address)); + var (($self'total_supply, $self'owner, $self'content, $self'mintable, $self'max_supply)) = $self; + return (($self'total_supply, $self'owner, $self'content, $self'mintable, $self'max_supply), $JettonDefaultWallet$_init_child(__tact_context_sys, my_address(), $address)); } ((int, slice, cell, int, int), ()) $SampleJetton$_fun_mint((int, slice, cell, int, int) $self, slice $to, int $amount, slice $response_destination) impure inline_ref { - var (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'maxSupply)) = $self; - throw_unless(6898, (($self'totalSupply + $amount) <= $self'maxSupply)); - $self'totalSupply = ($self'totalSupply + $amount); - var ($winit'code, $winit'data) = ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'maxSupply)~$SampleJetton$_fun_getJettonWalletInit($to); - $global_send($SendParameters$_constructor_to_value_bounce_mode_body_code_data($global_contractAddress(($winit'code, $winit'data)), 0, true, 64, $TokenTransferInternal$_store_cell($TokenTransferInternal$_constructor_queryId_amount_from_response_destination_forward_ton_amount_forward_payload(0, $amount, my_address(), $response_destination, 0, $global_emptySlice())), $winit'code, $winit'data)); - return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'maxSupply), ()); + var (($self'total_supply, $self'owner, $self'content, $self'mintable, $self'max_supply)) = $self; + throw_unless(18668, $self'mintable); + $self'total_supply = ($self'total_supply + $amount); + var ($winit'code, $winit'data) = ($self'total_supply, $self'owner, $self'content, $self'mintable, $self'max_supply)~$SampleJetton$_fun_getJettonWalletInit($to); + $global_send($SendParameters$_constructor_to_value_bounce_mode_body_code_data($global_contractAddress(($winit'code, $winit'data)), 0, true, 64, $TokenTransferInternal$_store_cell($TokenTransferInternal$_constructor_query_id_amount_from_response_destination_forward_ton_amount_forward_payload(0, $amount, my_address(), $response_destination, 0, $global_emptySlice())), $winit'code, $winit'data)); + return (($self'total_supply, $self'owner, $self'content, $self'mintable, $self'max_supply), ()); } ((int, slice, cell, int, int), ()) $SampleJetton$_fun_requireSenderAsWalletOwner((int, slice, cell, int, int) $self, slice $owner) impure inline_ref { - var (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'maxSupply)) = $self; + var (($self'total_supply, $self'owner, $self'content, $self'mintable, $self'max_supply)) = $self; var ($ctx'bounced, $ctx'sender, $ctx'value, $ctx'raw) = __tact_context_get(); - var ($winit'code, $winit'data) = ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'maxSupply)~$SampleJetton$_fun_getJettonWalletInit($owner); + var ($winit'code, $winit'data) = ($self'total_supply, $self'owner, $self'content, $self'mintable, $self'max_supply)~$SampleJetton$_fun_getJettonWalletInit($owner); throw_unless(4429, ( __tact_slice_eq_bits($ctx'sender, $global_contractAddress(($winit'code, $winit'data))) )); - return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'maxSupply), ()); + return (($self'total_supply, $self'owner, $self'content, $self'mintable, $self'max_supply), ()); } ((int, slice, cell, int, int), (int, int, slice, cell, cell)) $SampleJetton$_fun_get_jetton_data((int, slice, cell, int, int) $self) impure inline_ref { - var (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'maxSupply)) = $self; - cell $code = $StateInit$_get_code(($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'maxSupply)~$SampleJetton$_fun_getJettonWalletInit(my_address())); - return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'maxSupply), $JettonData$_constructor_totalSupply_mintable_owner_content_walletCode($self'totalSupply, $self'mintable, $self'owner, $self'content, $code)); + var (($self'total_supply, $self'owner, $self'content, $self'mintable, $self'max_supply)) = $self; + cell $code = $StateInit$_get_code(($self'total_supply, $self'owner, $self'content, $self'mintable, $self'max_supply)~$SampleJetton$_fun_getJettonWalletInit(my_address())); + return (($self'total_supply, $self'owner, $self'content, $self'mintable, $self'max_supply), $JettonData$_constructor_total_supply_mintable_owner_content_wallet_code($self'total_supply, $self'mintable, $self'owner, $self'content, $code)); } ((int, slice, cell, int, int), slice) $SampleJetton$_fun_get_wallet_address((int, slice, cell, int, int) $self, slice $owner) impure inline_ref { - var (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'maxSupply)) = $self; - var ($winit'code, $winit'data) = ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'maxSupply)~$SampleJetton$_fun_getJettonWalletInit($owner); - return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'maxSupply), $global_contractAddress(($winit'code, $winit'data))); + var (($self'total_supply, $self'owner, $self'content, $self'mintable, $self'max_supply)) = $self; + var ($winit'code, $winit'data) = ($self'total_supply, $self'owner, $self'content, $self'mintable, $self'max_supply)~$SampleJetton$_fun_getJettonWalletInit($owner); + return (($self'total_supply, $self'owner, $self'content, $self'mintable, $self'max_supply), $global_contractAddress(($winit'code, $winit'data))); } ((int, slice, cell, int, int), ()) $SampleJetton$_fun_requireOwner((int, slice, cell, int, int) $self) impure inline_ref { - var (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'maxSupply)) = $self; + var (($self'total_supply, $self'owner, $self'content, $self'mintable, $self'max_supply)) = $self; throw_unless(132, ( __tact_slice_eq_bits($self'owner, __tact_context_get_sender()) )); - return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'maxSupply), ()); + return (($self'total_supply, $self'owner, $self'content, $self'mintable, $self'max_supply), ()); } ((int, slice, cell, int, int), slice) $SampleJetton$_fun_owner((int, slice, cell, int, int) $self) impure inline_ref { - var (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'maxSupply)) = $self; - return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'maxSupply), $self'owner); + var (($self'total_supply, $self'owner, $self'content, $self'mintable, $self'max_supply)) = $self; + return (($self'total_supply, $self'owner, $self'content, $self'mintable, $self'max_supply), $self'owner); } ;; @@ -70,48 +70,50 @@ ;; (((int, slice, cell, int, int)), ()) $SampleJetton$_internal_binary_Mint((int, slice, cell, int, int) $self, (int, slice) $msg) impure inline { - var ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'maxSupply) = $self; + var ($self'total_supply, $self'owner, $self'content, $self'mintable, $self'max_supply) = $self; var ($msg'amount, $msg'receiver) = $msg; var ($ctx'bounced, $ctx'sender, $ctx'value, $ctx'raw) = __tact_context_get(); - throw_unless(3734, ( __tact_slice_eq_bits($self'owner, $ctx'sender) )); - throw_unless(18668, $self'mintable); - ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'maxSupply)~$SampleJetton$_fun_mint($msg'receiver, $msg'amount, $self'owner); - return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'maxSupply), ()); + throw_unless(14534, ( __tact_slice_eq_bits($self'owner, $ctx'sender) )); + throw_unless(3688, $self'mintable); + throw_unless(12241, (($self'total_supply + $msg'amount) <= $self'max_supply)); + ($self'total_supply, $self'owner, $self'content, $self'mintable, $self'max_supply)~$SampleJetton$_fun_mint($msg'receiver, $msg'amount, $self'owner); + return (($self'total_supply, $self'owner, $self'content, $self'mintable, $self'max_supply), ()); } ((int, slice, cell, int, int), ()) $SampleJetton$_internal_text_fcbeb9a480966477480639c7cea4a578aa6a113b2903b26d01bc384663eceef6((int, slice, cell, int, int) $self) impure inline { - var ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'maxSupply) = $self; + var ($self'total_supply, $self'owner, $self'content, $self'mintable, $self'max_supply) = $self; var ($ctx'bounced, $ctx'sender, $ctx'value, $ctx'raw) = __tact_context_get(); - throw_unless(18668, $self'mintable); - ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'maxSupply)~$SampleJetton$_fun_mint($ctx'sender, 100, $self'owner); - return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'maxSupply), ()); + throw_unless(3688, $self'mintable); + throw_unless(12241, (($self'total_supply + 100) <= $self'max_supply)); + ($self'total_supply, $self'owner, $self'content, $self'mintable, $self'max_supply)~$SampleJetton$_fun_mint($ctx'sender, 100, $self'owner); + return (($self'total_supply, $self'owner, $self'content, $self'mintable, $self'max_supply), ()); } ((int, slice, cell, int, int), ()) $SampleJetton$_internal_text_dc004c5b75be74376bd79df8713f2390620cc8a3095068b0583eb28ca3ac8ba0((int, slice, cell, int, int) $self) impure inline { - var ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'maxSupply) = $self; + var ($self'total_supply, $self'owner, $self'content, $self'mintable, $self'max_supply) = $self; var ($ctx'bounced, $ctx'sender, $ctx'value, $ctx'raw) = __tact_context_get(); - throw_unless(3734, ( __tact_slice_eq_bits($self'owner, $ctx'sender) )); + throw_unless(14534, ( __tact_slice_eq_bits($self'owner, $ctx'sender) )); $self'mintable = false; - return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'maxSupply), ()); + return (($self'total_supply, $self'owner, $self'content, $self'mintable, $self'max_supply), ()); } (((int, slice, cell, int, int)), ()) $SampleJetton$_internal_binary_TokenUpdateContent((int, slice, cell, int, int) $self, (cell) $msg) impure inline { - var ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'maxSupply) = $self; + var ($self'total_supply, $self'owner, $self'content, $self'mintable, $self'max_supply) = $self; var ($msg'content) = $msg; - ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'maxSupply)~$SampleJetton$_fun_requireOwner(); + ($self'total_supply, $self'owner, $self'content, $self'mintable, $self'max_supply)~$SampleJetton$_fun_requireOwner(); $self'content = $msg'content; - return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'maxSupply), ()); + return (($self'total_supply, $self'owner, $self'content, $self'mintable, $self'max_supply), ()); } (((int, slice, cell, int, int)), ()) $SampleJetton$_internal_binary_TokenBurnNotification((int, slice, cell, int, int) $self, (int, int, slice) $msg) impure inline { - var ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'maxSupply) = $self; - var ($msg'queryId, $msg'amount, $msg'response_destination) = $msg; - ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'maxSupply)~$SampleJetton$_fun_requireSenderAsWalletOwner($msg'response_destination); - $self'totalSupply = ($self'totalSupply - $msg'amount); + var ($self'total_supply, $self'owner, $self'content, $self'mintable, $self'max_supply) = $self; + var ($msg'query_id, $msg'amount, $msg'response_destination) = $msg; + ($self'total_supply, $self'owner, $self'content, $self'mintable, $self'max_supply)~$SampleJetton$_fun_requireSenderAsWalletOwner($msg'response_destination); + $self'total_supply = ($self'total_supply - $msg'amount); if ((~ null?($msg'response_destination))) { - $global_send($SendParameters$_constructor_to_value_bounce_mode_body($msg'response_destination, 0, false, (64 + 2), $TokenExcesses$_store_cell($TokenExcesses$_constructor_queryId($msg'queryId)))); + $global_send($SendParameters$_constructor_to_value_bounce_mode_body($msg'response_destination, 0, false, (64 + 2), $TokenExcesses$_store_cell($TokenExcesses$_constructor_query_id($msg'query_id)))); } - return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'maxSupply), ()); + return (($self'total_supply, $self'owner, $self'content, $self'mintable, $self'max_supply), ()); } ;; @@ -149,7 +151,7 @@ _ supported_interfaces() method_id { } _ get_abi_ipfs() method_id { - return "ipfs://QmPyS4URxYAXub9jKVAhQzVv73LvEPYaFHWqwDm7fRaDFM"; + return "ipfs://QmYV9KaDpGvYei4yWUKEhRmJbeB2HPd3DxMAwpoPxcReo3"; } _ lazy_deployment_completed() method_id { diff --git a/sources/output/SampleJetton_SampleJetton.code.fif b/sources/output/SampleJetton_SampleJetton.code.fif index ca2b8d3..cdfcd1d 100644 --- a/sources/output/SampleJetton_SampleJetton.code.fif +++ b/sources/output/SampleJetton_SampleJetton.code.fif @@ -22,8 +22,8 @@ PROGRAM{ DECLPROC $SampleJetton$_load DECLPROC $StateInit$_get_code DECLPROC $JettonData$_to_external - DECLPROC $SampleJetton$init$_load DECLPROC $JettonDefaultWallet$init$_store + DECLPROC $SampleJetton$init$_load DECLPROC $SampleJetton$_contract_init DECLPROC $SampleJetton$_contract_load DECLPROC $SampleJetton$_contract_store @@ -32,19 +32,19 @@ PROGRAM{ DECLPROC $global_emptySlice DECLPROC $global_contractAddress DECLPROC $global_send - DECLPROC $SendParameters$_constructor_to_value_bounce_mode_body_code_data - DECLPROC $TokenTransferInternal$_constructor_queryId_amount_from_response_destination_forward_ton_amount_forward_payload DECLPROC $JettonDefaultWallet$_init_child + DECLPROC $SendParameters$_constructor_to_value_bounce_mode_body_code_data + DECLPROC $TokenTransferInternal$_constructor_query_id_amount_from_response_destination_forward_ton_amount_forward_payload DECLPROC $SampleJetton$_fun_getJettonWalletInit DECLPROC $SampleJetton$_fun_mint DECLPROC $SampleJetton$_fun_requireSenderAsWalletOwner - DECLPROC $JettonData$_constructor_totalSupply_mintable_owner_content_walletCode + DECLPROC $JettonData$_constructor_total_supply_mintable_owner_content_wallet_code DECLPROC $SampleJetton$_fun_get_jetton_data DECLPROC $SampleJetton$_fun_get_wallet_address DECLPROC $SampleJetton$_fun_requireOwner DECLPROC $SampleJetton$_fun_owner DECLPROC $SendParameters$_constructor_to_value_bounce_mode_body - DECLPROC $TokenExcesses$_constructor_queryId + DECLPROC $TokenExcesses$_constructor_query_id DECLPROC $SampleJetton$_internal_binary_Mint DECLPROC $SampleJetton$_internal_text_fcbeb9a480966477480639c7cea4a578aa6a113b2903b26d01bc384663eceef6 DECLPROC $SampleJetton$_internal_text_dc004c5b75be74376bd79df8713f2390620cc8a3095068b0583eb28ca3ac8ba0 @@ -242,6 +242,12 @@ PROGRAM{ }> $JettonData$_to_external PROCINLINE:<{ }> + $JettonDefaultWallet$init$_store PROCINLINE:<{ + -ROT + __tact_store_address INLINECALLDICT + SWAP + __tact_store_address INLINECALLDICT + }> $SampleJetton$init$_load PROCINLINE:<{ __tact_load_address INLINECALLDICT SWAP @@ -250,12 +256,6 @@ PROGRAM{ LDIX 3 -ROLL }> - $JettonDefaultWallet$init$_store PROCINLINE:<{ - -ROT - __tact_store_address INLINECALLDICT - SWAP - __tact_store_address INLINECALLDICT - }> $SampleJetton$_contract_init PROCREF:<{ 0 PUSHINT 3 -ROLL @@ -416,12 +416,6 @@ PROGRAM{ SWAP SENDRAWMSG }> - $SendParameters$_constructor_to_value_bounce_mode_body_code_data PROCINLINE:<{ - s4 s6 XCHG - s4 s5 XCHG - }> - $TokenTransferInternal$_constructor_queryId_amount_from_response_destination_forward_ton_amount_forward_payload PROCINLINE:<{ - }> $JettonDefaultWallet$_init_child PROCREF:<{ s0 s2 XCHG CTOS @@ -449,6 +443,12 @@ PROGRAM{ $JettonDefaultWallet$init$_store INLINECALLDICT ENDC }> + $SendParameters$_constructor_to_value_bounce_mode_body_code_data PROCINLINE:<{ + s4 s6 XCHG + s4 s5 XCHG + }> + $TokenTransferInternal$_constructor_query_id_amount_from_response_destination_forward_ton_amount_forward_payload PROCINLINE:<{ + }> $SampleJetton$_fun_getJettonWalletInit PROCREF:<{ __tact_context_sys GETGLOB MYADDR @@ -456,11 +456,8 @@ PROGRAM{ $JettonDefaultWallet$_init_child INLINECALLDICT }> $SampleJetton$_fun_mint PROCREF:<{ - 6898 PUSHINT - s8 s2 PUSH2 - ADD + 18668 PUSHINT s5 PUSH - LEQ THROWANYIFNOT s7 s1 XCPU ADD @@ -479,7 +476,7 @@ PROGRAM{ s4 s15 XCHG s2 s3 XCHG s2 16 s() XCHG - $TokenTransferInternal$_constructor_queryId_amount_from_response_destination_forward_ton_amount_forward_payload INLINECALLDICT + $TokenTransferInternal$_constructor_query_id_amount_from_response_destination_forward_ton_amount_forward_payload INLINECALLDICT $TokenTransferInternal$_store_cell INLINECALLDICT s6 s5 s0 XCHG3 s4 s11 XCHG @@ -505,7 +502,7 @@ PROGRAM{ THROWANYIFNOT 4 ROLL }> - $JettonData$_constructor_totalSupply_mintable_owner_content_walletCode PROCINLINE:<{ + $JettonData$_constructor_total_supply_mintable_owner_content_wallet_code PROCINLINE:<{ }> $SampleJetton$_fun_get_jetton_data PROCREF:<{ MYADDR @@ -513,7 +510,7 @@ PROGRAM{ $StateInit$_get_code INLINECALLDICT s5 s2 s(-2) PU2XC s6 s5 s(-2) PU2XC - $JettonData$_constructor_totalSupply_mintable_owner_content_walletCode INLINECALLDICT + $JettonData$_constructor_total_supply_mintable_owner_content_wallet_code INLINECALLDICT }> $SampleJetton$_fun_get_wallet_address PROCREF:<{ $SampleJetton$_fun_getJettonWalletInit INLINECALLDICT @@ -534,20 +531,26 @@ PROGRAM{ PUSHNULL PUSHNULL }> - $TokenExcesses$_constructor_queryId PROCINLINE:<{ + $TokenExcesses$_constructor_query_id PROCINLINE:<{ }> $SampleJetton$_internal_binary_Mint PROCINLINE:<{ __tact_context_get INLINECALLDICT s2 s3 XCHG 3 BLKDROP s6 PUSH - 3734 PUSHINT + 14534 PUSHINT s0 s2 XCHG __tact_slice_eq_bits INLINECALLDICT THROWANYIFNOT - 18668 PUSHINT + 3688 PUSHINT s4 PUSH THROWANYIFNOT + 12241 PUSHINT + s7 s2 PUSH2 + ADD + s4 PUSH + LEQ + THROWANYIFNOT s1 s5 XCPU $SampleJetton$_fun_mint INLINECALLDICT }> @@ -555,9 +558,15 @@ PROGRAM{ __tact_context_get INLINECALLDICT s2 s3 XCHG 3 BLKDROP - 18668 PUSHINT + 3688 PUSHINT s3 PUSH THROWANYIFNOT + 12241 PUSHINT + s6 PUSH + 100 ADDCONST + s3 PUSH + LEQ + THROWANYIFNOT 100 PUSHINT s5 PUSH $SampleJetton$_fun_mint INLINECALLDICT @@ -568,7 +577,7 @@ PROGRAM{ s2 s3 XCHG 3 BLKDROP s3 PUSH - 3734 PUSHINT + 14534 PUSHINT s0 s2 XCHG __tact_slice_eq_bits INLINECALLDICT THROWANYIFNOT @@ -598,7 +607,7 @@ PROGRAM{ FALSE 66 PUSHINT s0 s7 XCHG - $TokenExcesses$_constructor_queryId INLINECALLDICT + $TokenExcesses$_constructor_query_id INLINECALLDICT $TokenExcesses$_store_cell INLINECALLDICT s4 s8 XCHG s1 s3 s0 XCHG3 @@ -639,7 +648,7 @@ PROGRAM{ 86142586315491086060343270784266291122 PUSHINT }> get_abi_ipfs PROC:<{ - x{697066733a2f2f516d507953345552785941587562396a4b564168517a567637334c76455059614648577177446d3766526144464d} PUSHSLICE + x{697066733a2f2f516d5956394b6144704776596569347957554b4568526d4a626542324850643344784d4177706f50786352656f33} PUSHSLICE }> lazy_deployment_completed PROC:<{ c4 PUSH diff --git a/sources/output/SampleJetton_SampleJetton.code.rev.fif b/sources/output/SampleJetton_SampleJetton.code.rev.fif index 926e4b1..ab27353 100644 --- a/sources/output/SampleJetton_SampleJetton.code.rev.fif +++ b/sources/output/SampleJetton_SampleJetton.code.rev.fif @@ -7,11 +7,11 @@ PROGRAM{ DECLPROC lazy_deployment_completed; DECLPROC get_abi_ipfs; DECLPROC ?fun_ref_10c319ce0484d846; - DECLPROC ?fun_ref_27bb79ad7753a314; DECLPROC ?fun_ref_3689983192928298; - DECLPROC ?fun_ref_48d0baf55cb49efb; + DECLPROC ?fun_ref_68aedfd8ce512bfa; DECLPROC ?fun_ref_7955be3cf724adb6; DECLPROC ?fun_ref_8762243e0b09a85d; + DECLPROC ?fun_ref_8aa409e65b5fa425; DECLPROC ?fun_ref_9c6d134f96a50c9f; DECLPROC ?fun_ref_b327c214bffdf4c6; DECLPROC ?fun_ref_b8d6a373d037f795; @@ -52,7 +52,7 @@ PROGRAM{ 2 SETGLOBVAR ?fun_ref_c344c56349ea959d INLINECALLDICT 2 5 BLKSWAP - ?fun_ref_48d0baf55cb49efb INLINECALLDICT + ?fun_ref_68aedfd8ce512bfa INLINECALLDICT 130 THROWIFNOT NEWC 3 GETGLOBVAR @@ -133,94 +133,11 @@ PROGRAM{ s0 s1 XCHG }> get_abi_ipfs PROC:<{ - x{697066733A2F2F516D507953345552785941587562396A4B564168517A567637334C76455059614648577177446D3766526144464D82_} PUSHSLICE + x{697066733A2F2F516D5956394B6144704776596569347957554B4568526D4A626542324850643344784D4177706F50786352656F3382_} PUSHSLICE }> ?fun_ref_10c319ce0484d846 PROCREF:<{ s3 PUSH }> - ?fun_ref_27bb79ad7753a314 PROCREF:<{ - 6898 PUSHINT - s8 s2 PUSH2 - ADD - s5 PUSH - LEQ - THROWANYIFNOT - s7 s1 XCPU - ADD - 5 2 BLKSWAP - ?fun_ref_8762243e0b09a85d INLINECALLDICT - DUP2 - 0 PUSHINT - ROTREV - NEWC - 0 PUSHINT - s0 s1 XCHG - 2 STU - 3 PUSHINT - s0 s1 XCHG - 2 STU - 0 PUSHINT - s0 s1 XCHG - 1 STU - s1 s2 XCHG - STREF - STREF - ENDC - HASHCU - NEWC - 2 PUSHINT - s0 s1 XCHG - 2 STU - 0 PUSHINT - s0 s1 XCHG - 1 STU - s1 s2 XCHG - 8 STI - 256 STU - ENDC - CTOS - s0 PUSH - SBITS - 267 PUSHINT - EQUAL - 136 THROWIFNOT - s0 PUSH - 11 PLDU - s0 PUSH - 1279 PUSHINT - EQUAL - 137 THROWIF - 10 PUSHPOW2 - EQUAL - 136 THROWIFNOT - 0 PUSHINT - -1 PUSHINT - 64 PUSHINT - s2 PUSH - MYADDR - s1 PUSH - NEWC - ENDC - CTOS - s3 s5 XCHG - s4 s15 XCHG - s2 s3 XCHG - s0 s2 XCHG - s0 s16 XCHG - s0 s2 XCHG - NEWC - 6 1 BLKSWAP - ?fun_ref_d21437797e815e3e INLINECALLDICT - ENDC - s6 s5 s0 XCHG3 - s4 s11 XCHG - s3 s10 XCHG - s0 s11 s10 XCHG3 - s4 s6 XCHG - s4 s5 XCHG - ?fun_ref_b93b9862cda1783c INLINECALLDICT - s0 s3 s4 XCHG3 - }> ?fun_ref_3689983192928298 PROCREF:<{ 1 GETGLOBVAR 4 UNTUPLE @@ -280,7 +197,7 @@ PROGRAM{ THROWANYIFNOT 1 4 BLKSWAP }> - ?fun_ref_48d0baf55cb49efb PROCREF:<{ + ?fun_ref_68aedfd8ce512bfa PROCREF:<{ 2 SAVE SAMEALTSAVE s0 s1 XCHG @@ -334,15 +251,21 @@ PROGRAM{ s2 s3 XCHG 3 BLKDROP s6 PUSH - 3734 PUSHINT + 14534 PUSHINT s0 s2 XCHG SDEQ THROWANYIFNOT - 18668 PUSHINT + 3688 PUSHINT s4 PUSH THROWANYIFNOT + 12241 PUSHINT + s7 s2 PUSH2 + ADD + s4 PUSH + LEQ + THROWANYIFNOT s1 s5 XCPU - ?fun_ref_27bb79ad7753a314 INLINECALLDICT + ?fun_ref_8aa409e65b5fa425 INLINECALLDICT -1 PUSHINT }> PUSHCONT IFJMP @@ -452,12 +375,18 @@ PROGRAM{ 4 UNTUPLE s2 s3 XCHG 3 BLKDROP - 18668 PUSHINT + 3688 PUSHINT s3 PUSH THROWANYIFNOT + 12241 PUSHINT + s6 PUSH + 100 ADD + s3 PUSH + LEQ + THROWANYIFNOT 100 PUSHINT s5 PUSH - ?fun_ref_27bb79ad7753a314 INLINECALLDICT + ?fun_ref_8aa409e65b5fa425 INLINECALLDICT -1 PUSHINT RETFALSE }> PUSHCONT @@ -471,7 +400,7 @@ PROGRAM{ s2 s3 XCHG 3 BLKDROP s3 PUSH - 3734 PUSHINT + 14534 PUSHINT s0 s2 XCHG SDEQ THROWANYIFNOT @@ -479,8 +408,7 @@ PROGRAM{ s0 s1 XCHG -1 PUSHINT RETFALSE - }> PUSHCONT - IFJMP + }> IFJMPREF }> IFREFELSE 0 PUSHINT }> @@ -497,6 +425,86 @@ PROGRAM{ ROT ?fun_ref_b8d6a373d037f795 INLINECALLDICT }> + ?fun_ref_8aa409e65b5fa425 PROCREF:<{ + 18668 PUSHINT + s5 PUSH + THROWANYIFNOT + s7 s1 XCPU + ADD + 5 2 BLKSWAP + ?fun_ref_8762243e0b09a85d INLINECALLDICT + DUP2 + 0 PUSHINT + ROTREV + NEWC + 0 PUSHINT + s0 s1 XCHG + 2 STU + 3 PUSHINT + s0 s1 XCHG + 2 STU + 0 PUSHINT + s0 s1 XCHG + 1 STU + s1 s2 XCHG + STREF + STREF + ENDC + HASHCU + NEWC + 2 PUSHINT + s0 s1 XCHG + 2 STU + 0 PUSHINT + s0 s1 XCHG + 1 STU + s1 s2 XCHG + 8 STI + 256 STU + ENDC + CTOS + s0 PUSH + SBITS + 267 PUSHINT + EQUAL + 136 THROWIFNOT + s0 PUSH + 11 PLDU + s0 PUSH + 1279 PUSHINT + EQUAL + 137 THROWIF + 10 PUSHPOW2 + EQUAL + 136 THROWIFNOT + 0 PUSHINT + -1 PUSHINT + 64 PUSHINT + s2 PUSH + MYADDR + s1 PUSH + NEWC + ENDC + CTOS + s3 s5 XCHG + s4 s15 XCHG + s2 s3 XCHG + s0 s2 XCHG + s0 s16 XCHG + s0 s2 XCHG + NEWC + 6 1 BLKSWAP + ?fun_ref_d21437797e815e3e INLINECALLDICT + ENDC + s6 s5 s0 XCHG3 + s4 s11 XCHG + s3 s10 XCHG + s0 s11 s10 XCHG3 + s4 s6 XCHG + s4 s5 XCHG + ?fun_ref_b93b9862cda1783c INLINECALLDICT + s0 s3 s4 XCHG3 + }> ?fun_ref_9c6d134f96a50c9f PROCREF:<{ 2 GETGLOBVAR s4 s1 PUXC diff --git a/sources/output/SampleJetton_SampleJetton.headers.fc b/sources/output/SampleJetton_SampleJetton.headers.fc index a27a9a9..e3f3374 100644 --- a/sources/output/SampleJetton_SampleJetton.headers.fc +++ b/sources/output/SampleJetton_SampleJetton.headers.fc @@ -72,14 +72,14 @@ _ $StateInit$_get_code((cell, cell) v) inline; ;; $JettonData$_to_external (int, int, slice, cell, cell) $JettonData$_to_external(((int, int, slice, cell, cell)) v) inline; -;; $SampleJetton$init$_load -(slice, ((slice, cell, int))) $SampleJetton$init$_load(slice sc_0) inline; - ;; $JettonDefaultWallet$init$_store builder $JettonDefaultWallet$init$_store(builder build_0, (slice, slice) v) inline; +;; $SampleJetton$init$_load +(slice, ((slice, cell, int))) $SampleJetton$init$_load(slice sc_0) inline; + ;; $SampleJetton$_contract_init -(int, slice, cell, int, int) $SampleJetton$_contract_init(slice $owner, cell $content, int $maxSupply) impure inline_ref; +(int, slice, cell, int, int) $SampleJetton$_contract_init(slice $owner, cell $content, int $max_supply) impure inline_ref; ;; $SampleJetton$_contract_load (int, slice, cell, int, int) $SampleJetton$_contract_load() impure inline_ref; @@ -102,14 +102,14 @@ slice $global_contractAddress((cell, cell) $s) impure inline; ;; $global_send () $global_send((int, slice, int, int, cell, cell, cell) $params) impure inline_ref; +;; $JettonDefaultWallet$_init_child +(cell, cell) $JettonDefaultWallet$_init_child(cell sys', slice $master, slice $owner) inline_ref; + ;; $SendParameters$_constructor_to_value_bounce_mode_body_code_data ((int, slice, int, int, cell, cell, cell)) $SendParameters$_constructor_to_value_bounce_mode_body_code_data(slice to, int value, int bounce, int mode, cell body, cell code, cell data) inline; -;; $TokenTransferInternal$_constructor_queryId_amount_from_response_destination_forward_ton_amount_forward_payload -((int, int, slice, slice, int, slice)) $TokenTransferInternal$_constructor_queryId_amount_from_response_destination_forward_ton_amount_forward_payload(int queryId, int amount, slice from, slice response_destination, int forward_ton_amount, slice forward_payload) inline; - -;; $JettonDefaultWallet$_init_child -(cell, cell) $JettonDefaultWallet$_init_child(cell sys', slice $master, slice $owner) inline_ref; +;; $TokenTransferInternal$_constructor_query_id_amount_from_response_destination_forward_ton_amount_forward_payload +((int, int, slice, slice, int, slice)) $TokenTransferInternal$_constructor_query_id_amount_from_response_destination_forward_ton_amount_forward_payload(int query_id, int amount, slice from, slice response_destination, int forward_ton_amount, slice forward_payload) inline; ;; $SampleJetton$_fun_getJettonWalletInit ((int, slice, cell, int, int), (cell, cell)) $SampleJetton$_fun_getJettonWalletInit((int, slice, cell, int, int) $self, slice $address) impure inline_ref; @@ -120,8 +120,8 @@ slice $global_contractAddress((cell, cell) $s) impure inline; ;; $SampleJetton$_fun_requireSenderAsWalletOwner ((int, slice, cell, int, int), ()) $SampleJetton$_fun_requireSenderAsWalletOwner((int, slice, cell, int, int) $self, slice $owner) impure inline_ref; -;; $JettonData$_constructor_totalSupply_mintable_owner_content_walletCode -((int, int, slice, cell, cell)) $JettonData$_constructor_totalSupply_mintable_owner_content_walletCode(int totalSupply, int mintable, slice owner, cell content, cell walletCode) inline; +;; $JettonData$_constructor_total_supply_mintable_owner_content_wallet_code +((int, int, slice, cell, cell)) $JettonData$_constructor_total_supply_mintable_owner_content_wallet_code(int total_supply, int mintable, slice owner, cell content, cell wallet_code) inline; ;; $SampleJetton$_fun_get_jetton_data ((int, slice, cell, int, int), (int, int, slice, cell, cell)) $SampleJetton$_fun_get_jetton_data((int, slice, cell, int, int) $self) impure inline_ref; @@ -138,5 +138,5 @@ slice $global_contractAddress((cell, cell) $s) impure inline; ;; $SendParameters$_constructor_to_value_bounce_mode_body ((int, slice, int, int, cell, cell, cell)) $SendParameters$_constructor_to_value_bounce_mode_body(slice to, int value, int bounce, int mode, cell body) inline; -;; $TokenExcesses$_constructor_queryId -((int)) $TokenExcesses$_constructor_queryId(int queryId) inline; +;; $TokenExcesses$_constructor_query_id +((int)) $TokenExcesses$_constructor_query_id(int query_id) inline; diff --git a/sources/output/SampleJetton_SampleJetton.md b/sources/output/SampleJetton_SampleJetton.md index 2c4fb40..0d87834 100644 --- a/sources/output/SampleJetton_SampleJetton.md +++ b/sources/output/SampleJetton_SampleJetton.md @@ -1,9 +1,9 @@ # TACT Compilation Report Contract: SampleJetton -BOC Size: 1687 bytes +BOC Size: 1702 bytes # Types -Total Types: 15 +Total Types: 17 ## StateInit TLB: `_ code:^cell data:^cell = StateInit` @@ -26,41 +26,49 @@ TLB: `change_owner_ok#327b2b4a queryId:uint64 newOwner:address = ChangeOwnerOk` Signature: `ChangeOwnerOk{queryId:uint64,newOwner:address}` ## JettonData -TLB: `_ totalSupply:int257 mintable:bool owner:address content:^cell walletCode:^cell = JettonData` -Signature: `JettonData{totalSupply:int257,mintable:bool,owner:address,content:^cell,walletCode:^cell}` +TLB: `_ total_supply:int257 mintable:bool owner:address content:^cell wallet_code:^cell = JettonData` +Signature: `JettonData{total_supply:int257,mintable:bool,owner:address,content:^cell,wallet_code:^cell}` ## JettonWalletData -TLB: `_ balance:int257 owner:address master:address walletCode:^cell = JettonWalletData` -Signature: `JettonWalletData{balance:int257,owner:address,master:address,walletCode:^cell}` +TLB: `_ balance:int257 owner:address master:address wallet_code:^cell = JettonWalletData` +Signature: `JettonWalletData{balance:int257,owner:address,master:address,wallet_code:^cell}` ## TokenTransfer -TLB: `token_transfer#0f8a7ea5 queryId:uint64 amount:coins destination:address response_destination:address custom_payload:Maybe ^cell forward_ton_amount:coins forward_payload:remainder = TokenTransfer` -Signature: `TokenTransfer{queryId:uint64,amount:coins,destination:address,response_destination:address,custom_payload:Maybe ^cell,forward_ton_amount:coins,forward_payload:remainder}` +TLB: `token_transfer#0f8a7ea5 query_id:uint64 amount:coins destination:address response_destination:address custom_payload:Maybe ^cell forward_ton_amount:coins forward_payload:remainder = TokenTransfer` +Signature: `TokenTransfer{query_id:uint64,amount:coins,destination:address,response_destination:address,custom_payload:Maybe ^cell,forward_ton_amount:coins,forward_payload:remainder}` ## TokenTransferInternal -TLB: `token_transfer_internal#178d4519 queryId:uint64 amount:coins from:address response_destination:address forward_ton_amount:coins forward_payload:remainder = TokenTransferInternal` -Signature: `TokenTransferInternal{queryId:uint64,amount:coins,from:address,response_destination:address,forward_ton_amount:coins,forward_payload:remainder}` +TLB: `token_transfer_internal#178d4519 query_id:uint64 amount:coins from:address response_destination:address forward_ton_amount:coins forward_payload:remainder = TokenTransferInternal` +Signature: `TokenTransferInternal{query_id:uint64,amount:coins,from:address,response_destination:address,forward_ton_amount:coins,forward_payload:remainder}` ## TokenNotification -TLB: `token_notification#7362d09c queryId:uint64 amount:coins from:address forward_payload:remainder = TokenNotification` -Signature: `TokenNotification{queryId:uint64,amount:coins,from:address,forward_payload:remainder}` +TLB: `token_notification#7362d09c query_id:uint64 amount:coins from:address forward_payload:remainder = TokenNotification` +Signature: `TokenNotification{query_id:uint64,amount:coins,from:address,forward_payload:remainder}` ## TokenBurn -TLB: `token_burn#595f07bc queryId:uint64 amount:coins response_destination:address custom_payload:Maybe ^cell = TokenBurn` -Signature: `TokenBurn{queryId:uint64,amount:coins,response_destination:address,custom_payload:Maybe ^cell}` +TLB: `token_burn#595f07bc query_id:uint64 amount:coins response_destination:address custom_payload:Maybe ^cell = TokenBurn` +Signature: `TokenBurn{query_id:uint64,amount:coins,response_destination:address,custom_payload:Maybe ^cell}` ## TokenBurnNotification -TLB: `token_burn_notification#7bdd97de queryId:uint64 amount:coins response_destination:address = TokenBurnNotification` -Signature: `TokenBurnNotification{queryId:uint64,amount:coins,response_destination:address}` +TLB: `token_burn_notification#7bdd97de query_id:uint64 amount:coins response_destination:address = TokenBurnNotification` +Signature: `TokenBurnNotification{query_id:uint64,amount:coins,response_destination:address}` ## TokenExcesses -TLB: `token_excesses#d53276db queryId:uint64 = TokenExcesses` -Signature: `TokenExcesses{queryId:uint64}` +TLB: `token_excesses#d53276db query_id:uint64 = TokenExcesses` +Signature: `TokenExcesses{query_id:uint64}` ## TokenUpdateContent TLB: `token_update_content#af1ca26a content:^cell = TokenUpdateContent` Signature: `TokenUpdateContent{content:^cell}` +## ProvideWalletAddress +TLB: `provide_wallet_address#2c76b973 query_id:uint64 owner_address:address include_address:bool = ProvideWalletAddress` +Signature: `ProvideWalletAddress{query_id:uint64,owner_address:address,include_address:bool}` + +## TakeWalletAddress +TLB: `take_wallet_address#d1735400 query_id:uint64 wallet_address:address owner_address:Maybe address = TakeWalletAddress` +Signature: `TakeWalletAddress{query_id:uint64,wallet_address:address,owner_address:Maybe address}` + ## Mint TLB: `mint#fc708bd2 amount:int257 receiver:address = Mint` Signature: `Mint{amount:int257,receiver:address}` @@ -100,11 +108,13 @@ Argument: owner 135: Code of a contract was not found 136: Invalid address 137: Masterchain support is not enabled for this contract -3734: Not Owner +3688: Not mintable 4159: Invalid value!! 4429: Invalid sender -6898: The total supply will be overlapping. +12241: Max supply exceeded +14534: Not owner 18668: Can't Mint Anymore +23951: Insufficient gas 42708: Invalid sender! 43422: Invalid value - Burn 62972: Invalid balance \ No newline at end of file diff --git a/sources/output/SampleJetton_SampleJetton.pkg b/sources/output/SampleJetton_SampleJetton.pkg index d736f1d..69eb9ef 100644 --- a/sources/output/SampleJetton_SampleJetton.pkg +++ b/sources/output/SampleJetton_SampleJetton.pkg @@ -1 +1 @@ -{"name":"SampleJetton","code":"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","abi":"{\"name\":\"SampleJetton\",\"types\":[{\"name\":\"StateInit\",\"header\":null,\"fields\":[{\"name\":\"code\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":false}},{\"name\":\"data\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":false}}]},{\"name\":\"Context\",\"header\":null,\"fields\":[{\"name\":\"bounced\",\"type\":{\"kind\":\"simple\",\"type\":\"bool\",\"optional\":false}},{\"name\":\"sender\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"value\",\"type\":{\"kind\":\"simple\",\"type\":\"int\",\"optional\":false,\"format\":257}},{\"name\":\"raw\",\"type\":{\"kind\":\"simple\",\"type\":\"slice\",\"optional\":false}}]},{\"name\":\"SendParameters\",\"header\":null,\"fields\":[{\"name\":\"bounce\",\"type\":{\"kind\":\"simple\",\"type\":\"bool\",\"optional\":false}},{\"name\":\"to\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"value\",\"type\":{\"kind\":\"simple\",\"type\":\"int\",\"optional\":false,\"format\":257}},{\"name\":\"mode\",\"type\":{\"kind\":\"simple\",\"type\":\"int\",\"optional\":false,\"format\":257}},{\"name\":\"body\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":true}},{\"name\":\"code\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":true}},{\"name\":\"data\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":true}}]},{\"name\":\"ChangeOwner\",\"header\":2174598809,\"fields\":[{\"name\":\"queryId\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}},{\"name\":\"newOwner\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}}]},{\"name\":\"ChangeOwnerOk\",\"header\":846932810,\"fields\":[{\"name\":\"queryId\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}},{\"name\":\"newOwner\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}}]},{\"name\":\"JettonData\",\"header\":null,\"fields\":[{\"name\":\"totalSupply\",\"type\":{\"kind\":\"simple\",\"type\":\"int\",\"optional\":false,\"format\":257}},{\"name\":\"mintable\",\"type\":{\"kind\":\"simple\",\"type\":\"bool\",\"optional\":false}},{\"name\":\"owner\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"content\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":false}},{\"name\":\"walletCode\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":false}}]},{\"name\":\"JettonWalletData\",\"header\":null,\"fields\":[{\"name\":\"balance\",\"type\":{\"kind\":\"simple\",\"type\":\"int\",\"optional\":false,\"format\":257}},{\"name\":\"owner\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"master\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"walletCode\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":false}}]},{\"name\":\"TokenTransfer\",\"header\":260734629,\"fields\":[{\"name\":\"queryId\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}},{\"name\":\"amount\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":\"coins\"}},{\"name\":\"destination\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"response_destination\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"custom_payload\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":true}},{\"name\":\"forward_ton_amount\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":\"coins\"}},{\"name\":\"forward_payload\",\"type\":{\"kind\":\"simple\",\"type\":\"slice\",\"optional\":false,\"format\":\"remainder\"}}]},{\"name\":\"TokenTransferInternal\",\"header\":395134233,\"fields\":[{\"name\":\"queryId\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}},{\"name\":\"amount\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":\"coins\"}},{\"name\":\"from\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"response_destination\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"forward_ton_amount\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":\"coins\"}},{\"name\":\"forward_payload\",\"type\":{\"kind\":\"simple\",\"type\":\"slice\",\"optional\":false,\"format\":\"remainder\"}}]},{\"name\":\"TokenNotification\",\"header\":1935855772,\"fields\":[{\"name\":\"queryId\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}},{\"name\":\"amount\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":\"coins\"}},{\"name\":\"from\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"forward_payload\",\"type\":{\"kind\":\"simple\",\"type\":\"slice\",\"optional\":false,\"format\":\"remainder\"}}]},{\"name\":\"TokenBurn\",\"header\":1499400124,\"fields\":[{\"name\":\"queryId\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}},{\"name\":\"amount\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":\"coins\"}},{\"name\":\"response_destination\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"custom_payload\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":true}}]},{\"name\":\"TokenBurnNotification\",\"header\":2078119902,\"fields\":[{\"name\":\"queryId\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}},{\"name\":\"amount\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":\"coins\"}},{\"name\":\"response_destination\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}}]},{\"name\":\"TokenExcesses\",\"header\":3576854235,\"fields\":[{\"name\":\"queryId\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}}]},{\"name\":\"TokenUpdateContent\",\"header\":2937889386,\"fields\":[{\"name\":\"content\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":false}}]},{\"name\":\"Mint\",\"header\":4235234258,\"fields\":[{\"name\":\"amount\",\"type\":{\"kind\":\"simple\",\"type\":\"int\",\"optional\":false,\"format\":257}},{\"name\":\"receiver\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}}]}],\"receivers\":[{\"receiver\":\"internal\",\"message\":{\"kind\":\"typed\",\"type\":\"Mint\"}},{\"receiver\":\"internal\",\"message\":{\"kind\":\"text\",\"text\":\"Mint: 100\"}},{\"receiver\":\"internal\",\"message\":{\"kind\":\"text\",\"text\":\"Owner: MintClose\"}},{\"receiver\":\"internal\",\"message\":{\"kind\":\"typed\",\"type\":\"TokenUpdateContent\"}},{\"receiver\":\"internal\",\"message\":{\"kind\":\"typed\",\"type\":\"TokenBurnNotification\"}}],\"getters\":[{\"name\":\"get_jetton_data\",\"arguments\":[],\"returnType\":{\"kind\":\"simple\",\"type\":\"JettonData\",\"optional\":false}},{\"name\":\"get_wallet_address\",\"arguments\":[{\"name\":\"owner\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}}],\"returnType\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"owner\",\"arguments\":[],\"returnType\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}}],\"errors\":{\"2\":{\"message\":\"Stack undeflow\"},\"3\":{\"message\":\"Stack overflow\"},\"4\":{\"message\":\"Integer overflow\"},\"5\":{\"message\":\"Integer out of expected range\"},\"6\":{\"message\":\"Invalid opcode\"},\"7\":{\"message\":\"Type check error\"},\"8\":{\"message\":\"Cell overflow\"},\"9\":{\"message\":\"Cell underflow\"},\"10\":{\"message\":\"Dictionary error\"},\"13\":{\"message\":\"Out of gas error\"},\"32\":{\"message\":\"Method ID not found\"},\"34\":{\"message\":\"Action is invalid or not supported\"},\"37\":{\"message\":\"Not enough TON\"},\"38\":{\"message\":\"Not enough extra-currencies\"},\"128\":{\"message\":\"Null reference exception\"},\"129\":{\"message\":\"Invalid serialization prefix\"},\"130\":{\"message\":\"Invalid incoming message\"},\"131\":{\"message\":\"Constraints error\"},\"132\":{\"message\":\"Access denied\"},\"133\":{\"message\":\"Contract stopped\"},\"134\":{\"message\":\"Invalid argument\"},\"135\":{\"message\":\"Code of a contract was not found\"},\"136\":{\"message\":\"Invalid address\"},\"137\":{\"message\":\"Masterchain support is not enabled for this contract\"},\"3734\":{\"message\":\"Not Owner\"},\"4159\":{\"message\":\"Invalid value!!\"},\"4429\":{\"message\":\"Invalid sender\"},\"6898\":{\"message\":\"The total supply will be overlapping.\"},\"18668\":{\"message\":\"Can't Mint Anymore\"},\"42708\":{\"message\":\"Invalid sender!\"},\"43422\":{\"message\":\"Invalid value - Burn\"},\"62972\":{\"message\":\"Invalid balance\"}},\"interfaces\":[\"org.ton.introspection.v0\",\"org.ton.abi.ipfs.v0\",\"org.ton.deploy.lazy.v0\",\"org.ton.chain.workchain.v0\",\"org.ton.jetton.master\",\"org.ton.ownable\"]}","init":{"kind":"direct","args":[{"name":"owner","type":{"kind":"simple","type":"address","optional":false}},{"name":"content","type":{"kind":"simple","type":"cell","optional":false}},{"name":"maxSupply","type":{"kind":"simple","type":"int","optional":false,"format":257}}],"prefix":{"bits":1,"value":0},"deployment":{"kind":"system-cell","system":"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"}},"sources":{"sources/message.tact":"c3RydWN0IEpldHRvbkRhdGEgewogICAgdG90YWxTdXBwbHk6IEludDsKICAgIG1pbnRhYmxlOiBCb29sOwogICAgb3duZXI6IEFkZHJlc3M7CiAgICBjb250ZW50OiBDZWxsOwogICAgd2FsbGV0Q29kZTogQ2VsbDsKfQoKc3RydWN0IEpldHRvbldhbGxldERhdGEgewogICAgYmFsYW5jZTogSW50OwogICAgb3duZXI6IEFkZHJlc3M7CiAgICBtYXN0ZXI6IEFkZHJlc3M7CiAgICB3YWxsZXRDb2RlOiBDZWxsOwp9CgptZXNzYWdlKDB4ZjhhN2VhNSkgVG9rZW5UcmFuc2ZlciB7CiAgICBxdWVyeUlkOiBJbnQgYXMgdWludDY0OwogICAgYW1vdW50OiBJbnQgYXMgY29pbnM7CiAgICBkZXN0aW5hdGlvbjogQWRkcmVzczsKICAgIHJlc3BvbnNlX2Rlc3RpbmF0aW9uOiBBZGRyZXNzOwogICAgY3VzdG9tX3BheWxvYWQ6IENlbGw/OwogICAgZm9yd2FyZF90b25fYW1vdW50OiBJbnQgYXMgY29pbnM7CiAgICBmb3J3YXJkX3BheWxvYWQ6IFNsaWNlIGFzIHJlbWFpbmluZzsgLy8gQ29tbWVudCBUZXh0IG1lc3NhZ2Ugd2hlbiBUcmFuc2ZlciB0aGUgamV0dG9uCn0KCm1lc3NhZ2UoMHgxNzhkNDUxOSkgVG9rZW5UcmFuc2ZlckludGVybmFsIHsKICAgIHF1ZXJ5SWQ6IEludCBhcyB1aW50NjQ7CiAgICBhbW91bnQ6IEludCBhcyBjb2luczsKICAgIGZyb206IEFkZHJlc3M7CiAgICByZXNwb25zZV9kZXN0aW5hdGlvbjogQWRkcmVzczsKICAgIGZvcndhcmRfdG9uX2Ftb3VudDogSW50IGFzIGNvaW5zOwogICAgZm9yd2FyZF9wYXlsb2FkOiBTbGljZSBhcyByZW1haW5pbmc7IC8vIENvbW1lbnQgVGV4dCBtZXNzYWdlIHdoZW4gVHJhbnNmZXIgdGhlIGpldHRvbgp9CgptZXNzYWdlKDB4NzM2MmQwOWMpIFRva2VuTm90aWZpY2F0aW9uIHsKICAgIHF1ZXJ5SWQ6IEludCBhcyB1aW50NjQ7CiAgICBhbW91bnQ6IEludCBhcyBjb2luczsKICAgIGZyb206IEFkZHJlc3M7CiAgICBmb3J3YXJkX3BheWxvYWQ6IFNsaWNlIGFzIHJlbWFpbmluZzsgLy8gQ29tbWVudCBUZXh0IG1lc3NhZ2Ugd2hlbiBUcmFuc2ZlciB0aGUgamV0dG9uIAp9CgptZXNzYWdlKDB4NTk1ZjA3YmMpIFRva2VuQnVybiB7CiAgICBxdWVyeUlkOiBJbnQgYXMgdWludDY0OwogICAgYW1vdW50OiBJbnQgYXMgY29pbnM7CiAgICByZXNwb25zZV9kZXN0aW5hdGlvbjogQWRkcmVzczsKICAgIGN1c3RvbV9wYXlsb2FkOiBDZWxsPzsKfQoKbWVzc2FnZSgweDdiZGQ5N2RlKSBUb2tlbkJ1cm5Ob3RpZmljYXRpb24gewogICAgcXVlcnlJZDogSW50IGFzIHVpbnQ2NDsKICAgIGFtb3VudDogSW50IGFzIGNvaW5zOwogICAgcmVzcG9uc2VfZGVzdGluYXRpb246IEFkZHJlc3M7Cn0KCm1lc3NhZ2UoMHhkNTMyNzZkYikgVG9rZW5FeGNlc3NlcyB7CiAgICBxdWVyeUlkOiBJbnQgYXMgdWludDY0Owp9CgptZXNzYWdlIFRva2VuVXBkYXRlQ29udGVudCB7CiAgICBjb250ZW50OiBDZWxsOwp9Cgo=","sources/contract.tact":"aW1wb3J0ICJAc3RkbGliL293bmFibGUiOwppbXBvcnQgIi4vbWVzc2FnZSI7CgptZXNzYWdlIE1pbnQgewogICAgYW1vdW50OiBJbnQ7CiAgICByZWNlaXZlcjogQWRkcmVzczsKfQoKY29udHJhY3QgU2FtcGxlSmV0dG9uIHdpdGggSmV0dG9uIHsKICAgIHRvdGFsU3VwcGx5OiBJbnQgYXMgY29pbnM7CiAgICBvd25lcjogQWRkcmVzczsKICAgIGNvbnRlbnQ6IENlbGw7CiAgICBtaW50YWJsZTogQm9vbDsKCiAgICBtYXhTdXBwbHk6IEludCBhcyBjb2luczsgLy8gRXh0cmFjdCBwYXJhbWV0ZXIgd2Ugc2V0IGhlcmUuIFRoZSBKZXR0b24gU3RhbmRhcmRzIGRvZXNuJ3QgaGF2ZSB0aGlzIHBhcmFtZXRlci4KCiAgICBpbml0KG93bmVyOiBBZGRyZXNzLCBjb250ZW50OiBDZWxsLCBtYXhTdXBwbHk6IEludCkgewogICAgICAgIHNlbGYudG90YWxTdXBwbHkgPSAwOwogICAgICAgIHNlbGYub3duZXIgPSBvd25lcjsKICAgICAgICBzZWxmLm1pbnRhYmxlID0gdHJ1ZTsKICAgICAgICBzZWxmLmNvbnRlbnQgPSBjb250ZW50OwogICAgICAgIHNlbGYubWF4U3VwcGx5ID0gbWF4U3VwcGx5OwogICAgfQoKICAgIHJlY2VpdmUobXNnOiBNaW50KSB7CiAgICAgICAgbGV0IGN0eDogQ29udGV4dCA9IGNvbnRleHQoKTsKICAgICAgICByZXF1aXJlKGN0eC5zZW5kZXIgPT0gc2VsZi5vd25lciwgIk5vdCBPd25lciIpOwogICAgICAgIHJlcXVpcmUoc2VsZi5taW50YWJsZSwgIkNhbid0IE1pbnQgQW55bW9yZSIpOwogICAgICAgIHNlbGYubWludChtc2cucmVjZWl2ZXIsIG1zZy5hbW91bnQsIHNlbGYub3duZXIpOyAvLyAodG8sIGFtb3VudCwgcmVzcG9uc2VfZGVzdGluYXRpb24pCiAgICB9CgogICAgcmVjZWl2ZSgiTWludDogMTAwIikgeyAvLyBQdWJsaWMgTWludGluZwogICAgICAgIGxldCBjdHg6IENvbnRleHQgPSBjb250ZXh0KCk7CiAgICAgICAgcmVxdWlyZShzZWxmLm1pbnRhYmxlLCAiQ2FuJ3QgTWludCBBbnltb3JlIik7CiAgICAgICAgc2VsZi5taW50KGN0eC5zZW5kZXIsIDEwMCwgc2VsZi5vd25lcik7IC8vIPCflLQgCiAgICB9CgogICAgcmVjZWl2ZSgiT3duZXI6IE1pbnRDbG9zZSIpIHsKICAgICAgICBsZXQgY3R4OiBDb250ZXh0ID0gY29udGV4dCgpOwogICAgICAgIHJlcXVpcmUoY3R4LnNlbmRlciA9PSBzZWxmLm93bmVyLCAiTm90IE93bmVyIik7CiAgICAgICAgc2VsZi5taW50YWJsZSA9IGZhbHNlOwogICAgfQp9IAoKLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC8vCkBpbnRlcmZhY2UoIm9yZy50b24uamV0dG9uLm1hc3RlciIpCnRyYWl0IEpldHRvbiB3aXRoIE93bmFibGUgewoKICAgIHRvdGFsU3VwcGx5OiBJbnQ7IC8vIEFscmVhZHkgc2V0IGluaXRpYWxseSAKICAgIG1pbnRhYmxlOiBCb29sOwogICAgb3duZXI6IEFkZHJlc3M7CiAgICBjb250ZW50OiBDZWxsOwogICAgCiAgICBtYXhTdXBwbHk6IEludDsKCiAgICByZWNlaXZlKG1zZzogVG9rZW5VcGRhdGVDb250ZW50KSB7CiAgICAgICAgc2VsZi5yZXF1aXJlT3duZXIoKTsgICAgICAgICAgICAgICAgLy8gQWxsb3cgY2hhbmdpbmcgY29udGVudCBvbmx5IGJ5IG93bmVyCiAgICAgICAgc2VsZi5jb250ZW50ID0gbXNnLmNvbnRlbnQ7ICAgICAgICAgLy8gVXBkYXRlIGNvbnRlbnQKICAgIH0KCiAgICByZWNlaXZlKG1zZzogVG9rZW5CdXJuTm90aWZpY2F0aW9uKSB7CiAgICAgICAgc2VsZi5yZXF1aXJlU2VuZGVyQXNXYWxsZXRPd25lcihtc2cucmVzcG9uc2VfZGVzdGluYXRpb24pOyAgICAgICAvLyBDaGVjayB3YWxsZXQKICAgICAgICBzZWxmLnRvdGFsU3VwcGx5ID0gc2VsZi50b3RhbFN1cHBseSAtIG1zZy5hbW91bnQ7IC8vIFVwZGF0ZSBzdXBwbHkKICAgICAgICBpZiAobXNnLnJlc3BvbnNlX2Rlc3RpbmF0aW9uICE9IG51bGwpIHsgLy8gQ2FzaGJhY2sKICAgICAgICAgICAgc2VuZChTZW5kUGFyYW1ldGVyc3sKICAgICAgICAgICAgICAgIHRvOiBtc2cucmVzcG9uc2VfZGVzdGluYXRpb24sIAogICAgICAgICAgICAgICAgdmFsdWU6IDAsCiAgICAgICAgICAgICAgICBib3VuY2U6IGZhbHNlLAogICAgICAgICAgICAgICAgbW9kZTogU2VuZFJlbWFpbmluZ1ZhbHVlICsgU2VuZElnbm9yZUVycm9ycywKICAgICAgICAgICAgICAgIGJvZHk6IFRva2VuRXhjZXNzZXN7IHF1ZXJ5SWQ6IG1zZy5xdWVyeUlkIH0udG9DZWxsKCkKICAgICAgICAgICAgfSk7CiAgICAgICAgfQogICAgfQoKICAgIC8vIFByaXZhdGUgTWV0aG9kcyAvLyAKICAgIC8vIEB0byBUaGUgQWRkcmVzcyByZWNlaXZlIHRoZSBKZXR0b24gdG9rZW4gYWZ0ZXIgbWludGluZwogICAgLy8gQGFtb3VudCBUaGUgYW1vdW50IG9mIEpldHRvbiB0b2tlbiBiZWluZyBtaW50ZWQKICAgIC8vIEByZXNwb25zZV9kZXN0aW5hdGlvbiBUaGUgcHJldmlvdXMgb3duZXIgYWRkcmVzcwogICAgZnVuIG1pbnQodG86IEFkZHJlc3MsIGFtb3VudDogSW50LCByZXNwb25zZV9kZXN0aW5hdGlvbjogQWRkcmVzcykgewogICAgICAgIHJlcXVpcmUoc2VsZi50b3RhbFN1cHBseSArIGFtb3VudCA8PSBzZWxmLm1heFN1cHBseSwgIlRoZSB0b3RhbCBzdXBwbHkgd2lsbCBiZSBvdmVybGFwcGluZy4iKTsKICAgICAgICBzZWxmLnRvdGFsU3VwcGx5ID0gc2VsZi50b3RhbFN1cHBseSArIGFtb3VudDsgLy8gVXBkYXRlIHRvdGFsIHN1cHBseQoKICAgICAgICBsZXQgd2luaXQ6IFN0YXRlSW5pdCA9IHNlbGYuZ2V0SmV0dG9uV2FsbGV0SW5pdCh0byk7IC8vIENyZWF0ZSBtZXNzYWdlCiAgICAgICAgc2VuZChTZW5kUGFyYW1ldGVyc3sKICAgICAgICAgICAgdG86IGNvbnRyYWN0QWRkcmVzcyh3aW5pdCksIAogICAgICAgICAgICB2YWx1ZTogMCwgCiAgICAgICAgICAgIGJvdW5jZTogdHJ1ZSwKICAgICAgICAgICAgbW9kZTogU2VuZFJlbWFpbmluZ1ZhbHVlLAogICAgICAgICAgICBib2R5OiBUb2tlblRyYW5zZmVySW50ZXJuYWx7IAogICAgICAgICAgICAgICAgcXVlcnlJZDogMCwKICAgICAgICAgICAgICAgIGFtb3VudDogYW1vdW50LAogICAgICAgICAgICAgICAgZnJvbTogbXlBZGRyZXNzKCksCiAgICAgICAgICAgICAgICByZXNwb25zZV9kZXN0aW5hdGlvbjogcmVzcG9uc2VfZGVzdGluYXRpb24sCiAgICAgICAgICAgICAgICBmb3J3YXJkX3Rvbl9hbW91bnQ6IDAsCiAgICAgICAgICAgICAgICBmb3J3YXJkX3BheWxvYWQ6IGVtcHR5U2xpY2UoKQogICAgICAgICAgICB9LnRvQ2VsbCgpLAogICAgICAgICAgICBjb2RlOiB3aW5pdC5jb2RlLAogICAgICAgICAgICBkYXRhOiB3aW5pdC5kYXRhCiAgICAgICAgfSk7CiAgICB9CgogICAgZnVuIHJlcXVpcmVTZW5kZXJBc1dhbGxldE93bmVyKG93bmVyOiBBZGRyZXNzKSB7CiAgICAgICAgbGV0IGN0eDogQ29udGV4dCA9IGNvbnRleHQoKTsKICAgICAgICBsZXQgd2luaXQ6IFN0YXRlSW5pdCA9IHNlbGYuZ2V0SmV0dG9uV2FsbGV0SW5pdChvd25lcik7CiAgICAgICAgcmVxdWlyZShjb250cmFjdEFkZHJlc3Mod2luaXQpID09IGN0eC5zZW5kZXIsICJJbnZhbGlkIHNlbmRlciIpOwogICAgfQoKICAgIHZpcnR1YWwgZnVuIGdldEpldHRvbldhbGxldEluaXQoYWRkcmVzczogQWRkcmVzcyk6IFN0YXRlSW5pdCB7CiAgICAgICAgcmV0dXJuIGluaXRPZiBKZXR0b25EZWZhdWx0V2FsbGV0KG15QWRkcmVzcygpLCBhZGRyZXNzKTsKICAgIH0KCiAgICAvLyA9PT09PT0gR2V0IE1ldGhvZHMgPT09PT09IC8vCiAgICBnZXQgZnVuIGdldF9qZXR0b25fZGF0YSgpOiBKZXR0b25EYXRhIHsKICAgICAgICBsZXQgY29kZTogQ2VsbCA9IHNlbGYuZ2V0SmV0dG9uV2FsbGV0SW5pdChteUFkZHJlc3MoKSkuY29kZTsKICAgICAgICByZXR1cm4gSmV0dG9uRGF0YXsgCiAgICAgICAgICAgIHRvdGFsU3VwcGx5OiBzZWxmLnRvdGFsU3VwcGx5LCAKICAgICAgICAgICAgbWludGFibGU6IHNlbGYubWludGFibGUsIAogICAgICAgICAgICBvd25lcjogc2VsZi5vd25lciwgCiAgICAgICAgICAgIGNvbnRlbnQ6IHNlbGYuY29udGVudCwgCiAgICAgICAgICAgIHdhbGxldENvZGU6IGNvZGUKICAgICAgICB9OwogICAgfQoKICAgIGdldCBmdW4gZ2V0X3dhbGxldF9hZGRyZXNzKG93bmVyOiBBZGRyZXNzKTogQWRkcmVzcyB7CiAgICAgICAgbGV0IHdpbml0OiBTdGF0ZUluaXQgPSBzZWxmLmdldEpldHRvbldhbGxldEluaXQob3duZXIpOwogICAgICAgIHJldHVybiBjb250cmFjdEFkZHJlc3Mod2luaXQpOwogICAgfQp9CgovLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLy8KQGludGVyZmFjZSgib3JnLnRvbi5qZXR0b24ud2FsbGV0IikKY29udHJhY3QgSmV0dG9uRGVmYXVsdFdhbGxldCB7CiAgICBjb25zdCBtaW5Ub25zRm9yU3RvcmFnZTogSW50ID0gdG9uKCIwLjAxIik7CiAgICBjb25zdCBnYXNDb25zdW1wdGlvbjogSW50ID0gdG9uKCIwLjAxIik7CgogICAgYmFsYW5jZTogSW50OwogICAgb3duZXI6IEFkZHJlc3M7CiAgICBtYXN0ZXI6IEFkZHJlc3M7CgogICAgaW5pdChtYXN0ZXI6IEFkZHJlc3MsIG93bmVyOiBBZGRyZXNzKSB7CiAgICAgICAgc2VsZi5iYWxhbmNlID0gMDsKICAgICAgICBzZWxmLm93bmVyID0gb3duZXI7CiAgICAgICAgc2VsZi5tYXN0ZXIgPSBtYXN0ZXI7CiAgICB9CgogICAgcmVjZWl2ZShtc2c6IFRva2VuVHJhbnNmZXIpIHsgLy8gMHhmOGE3ZWE1CiAgICAgICAgbGV0IGN0eDogQ29udGV4dCA9IGNvbnRleHQoKTsgLy8gQ2hlY2sgc2VuZGVyCiAgICAgICAgcmVxdWlyZShjdHguc2VuZGVyID09IHNlbGYub3duZXIsICJJbnZhbGlkIHNlbmRlciIpOwoKICAgICAgICAvLyBHYXMgY2hlY2tzCiAgICAgICAgbGV0IGZ3ZEZlZTogSW50ID0gY3R4LnJlYWRGb3J3YXJkRmVlKCkgKyBjdHgucmVhZEZvcndhcmRGZWUoKTsgIAogICAgICAgIGxldCBmaW5hbDogSW50ID0gIDIgKiBzZWxmLmdhc0NvbnN1bXB0aW9uICsgc2VsZi5taW5Ub25zRm9yU3RvcmFnZSArIGZ3ZEZlZTsKICAgICAgICByZXF1aXJlKGN0eC52YWx1ZSA+IG1pbihmaW5hbCwgdG9uKCIwLjAxIikpLCAiSW52YWxpZCB2YWx1ZSEhIik7IAoKICAgICAgICAvLyBVcGRhdGUgYmFsYW5jZQogICAgICAgIHNlbGYuYmFsYW5jZSA9IHNlbGYuYmFsYW5jZSAtIG1zZy5hbW91bnQ7IAogICAgICAgIHJlcXVpcmUoc2VsZi5iYWxhbmNlID49IDAsICJJbnZhbGlkIGJhbGFuY2UiKTsKCiAgICAgICAgbGV0IGluaXQ6IFN0YXRlSW5pdCA9IGluaXRPZiBKZXR0b25EZWZhdWx0V2FsbGV0KHNlbGYubWFzdGVyLCBtc2cuZGVzdGluYXRpb24pOyAgCiAgICAgICAgbGV0IHdhbGxldEFkZHJlc3M6IEFkZHJlc3MgPSBjb250cmFjdEFkZHJlc3MoaW5pdCk7CiAgICAgICAgc2VuZChTZW5kUGFyYW1ldGVyc3sKICAgICAgICAgICAgICAgIHRvOiB3YWxsZXRBZGRyZXNzLCAKICAgICAgICAgICAgICAgIHZhbHVlOiAwLAogICAgICAgICAgICAgICAgbW9kZTogU2VuZFJlbWFpbmluZ1ZhbHVlLCAKICAgICAgICAgICAgICAgIGJvdW5jZTogdHJ1ZSwKICAgICAgICAgICAgICAgIGJvZHk6IFRva2VuVHJhbnNmZXJJbnRlcm5hbHsKICAgICAgICAgICAgICAgICAgICBxdWVyeUlkOiBtc2cucXVlcnlJZCwKICAgICAgICAgICAgICAgICAgICBhbW91bnQ6IG1zZy5hbW91bnQsCiAgICAgICAgICAgICAgICAgICAgZnJvbTogc2VsZi5vd25lciwKICAgICAgICAgICAgICAgICAgICByZXNwb25zZV9kZXN0aW5hdGlvbjogbXNnLnJlc3BvbnNlX2Rlc3RpbmF0aW9uLAogICAgICAgICAgICAgICAgICAgIGZvcndhcmRfdG9uX2Ftb3VudDogbXNnLmZvcndhcmRfdG9uX2Ftb3VudCwKICAgICAgICAgICAgICAgICAgICBmb3J3YXJkX3BheWxvYWQ6IG1zZy5mb3J3YXJkX3BheWxvYWQKICAgICAgICAgICAgICAgIH0udG9DZWxsKCksCiAgICAgICAgICAgICAgICBjb2RlOiBpbml0LmNvZGUsCiAgICAgICAgICAgICAgICBkYXRhOiBpbml0LmRhdGEKICAgICAgICAgICAgfSk7CiAgICB9CgogICAgcmVjZWl2ZShtc2c6IFRva2VuVHJhbnNmZXJJbnRlcm5hbCkgeyAvLyAweDE3OGQ0NTE5CiAgICAgICAgbGV0IGN0eDogQ29udGV4dCA9IGNvbnRleHQoKTsKCiAgICAgICAgaWYgKGN0eC5zZW5kZXIgIT0gc2VsZi5tYXN0ZXIpIHsKICAgICAgICAgICAgbGV0IHNpbml0OiBTdGF0ZUluaXQgPSBpbml0T2YgSmV0dG9uRGVmYXVsdFdhbGxldChzZWxmLm1hc3RlciwgbXNnLmZyb20pOwogICAgICAgICAgICByZXF1aXJlKGNvbnRyYWN0QWRkcmVzcyhzaW5pdCkgPT0gY3R4LnNlbmRlciwgIkludmFsaWQgc2VuZGVyISIpOwogICAgICAgIH0KCiAgICAgICAgLy8gVXBkYXRlIGJhbGFuY2UKICAgICAgICBzZWxmLmJhbGFuY2UgPSBzZWxmLmJhbGFuY2UgKyBtc2cuYW1vdW50OwogICAgICAgIHJlcXVpcmUoc2VsZi5iYWxhbmNlID49IDAsICJJbnZhbGlkIGJhbGFuY2UiKTsgCiAgICAgICAgCiAgICAgICAgLy8gR2V0IHZhbHVlIGZvciBnYXMKICAgICAgICBsZXQgbXNnVmFsdWU6IEludCA9IHNlbGYubXNnVmFsdWUoY3R4LnZhbHVlKTsgIAogICAgICAgIGxldCBmd2RGZWU6IEludCA9IGN0eC5yZWFkRm9yd2FyZEZlZSgpOwogICAgICAgIG1zZ1ZhbHVlID0gbXNnVmFsdWUgLSBtc2cuZm9yd2FyZF90b25fYW1vdW50IC0gZndkRmVlOwogICAgICAgIAogICAgICAgICAvLyAweDczNjJkMDljIC0gbm90aWZ5IHRoZSBuZXcgb3duZXIgb2YgSmV0dG9uVG9rZW4gdGhhdCB0aGUgdHJhbnNmZXIgaXMgY29tcGxldGUKICAgICAgICBpZiAobXNnLmZvcndhcmRfdG9uX2Ftb3VudCA+IDApIHsgCiAgICAgICAgICAgIHNlbmQoU2VuZFBhcmFtZXRlcnN7CiAgICAgICAgICAgICAgICB0bzogc2VsZi5vd25lciwKICAgICAgICAgICAgICAgIHZhbHVlOiBtc2cuZm9yd2FyZF90b25fYW1vdW50LAogICAgICAgICAgICAgICAgbW9kZTogU2VuZFBheUdhc1NlcGFyYXRlbHkgKyBTZW5kSWdub3JlRXJyb3JzLAogICAgICAgICAgICAgICAgYm91bmNlOiBmYWxzZSwKICAgICAgICAgICAgICAgIGJvZHk6IFRva2VuTm90aWZpY2F0aW9uIHsKICAgICAgICAgICAgICAgICAgICBxdWVyeUlkOiBtc2cucXVlcnlJZCwKICAgICAgICAgICAgICAgICAgICBhbW91bnQ6IG1zZy5hbW91bnQsCiAgICAgICAgICAgICAgICAgICAgZnJvbTogbXNnLmZyb20sCiAgICAgICAgICAgICAgICAgICAgZm9yd2FyZF9wYXlsb2FkOiBtc2cuZm9yd2FyZF9wYXlsb2FkCiAgICAgICAgICAgICAgICB9LnRvQ2VsbCgpCiAgICAgICAgICAgIH0pOwogICAgICAgIH0KCiAgICAgICAgLy8gMHhkNTMyNzZkYiAtLSBDYXNoYmFjayB0byB0aGUgb3JpZ2luYWwgU2VuZGVyCiAgICAgICAgaWYgKG1zZy5yZXNwb25zZV9kZXN0aW5hdGlvbiAhPSBudWxsKSB7IAogICAgICAgICAgICBzZW5kKFNlbmRQYXJhbWV0ZXJzIHsKICAgICAgICAgICAgICAgIHRvOiBtc2cucmVzcG9uc2VfZGVzdGluYXRpb24sIAogICAgICAgICAgICAgICAgdmFsdWU6IG1zZ1ZhbHVlLCAgCiAgICAgICAgICAgICAgICBib3VuY2U6IGZhbHNlLAogICAgICAgICAgICAgICAgYm9keTogVG9rZW5FeGNlc3NlcyB7IAogICAgICAgICAgICAgICAgICAgIHF1ZXJ5SWQ6IG1zZy5xdWVyeUlkCiAgICAgICAgICAgICAgICB9LnRvQ2VsbCgpLAogICAgICAgICAgICAgICAgbW9kZTogU2VuZElnbm9yZUVycm9ycwogICAgICAgICAgICB9KTsKICAgICAgICB9CiAgICB9CgogICAgcmVjZWl2ZShtc2c6IFRva2VuQnVybikgewogICAgICAgIGxldCBjdHg6IENvbnRleHQgPSBjb250ZXh0KCk7CiAgICAgICAgcmVxdWlyZShjdHguc2VuZGVyID09IHNlbGYub3duZXIsICJJbnZhbGlkIHNlbmRlciIpOyAgLy8gQ2hlY2sgc2VuZGVyCgogICAgICAgIHNlbGYuYmFsYW5jZSA9IHNlbGYuYmFsYW5jZSAtIG1zZy5hbW91bnQ7IC8vIFVwZGF0ZSBiYWxhbmNlCiAgICAgICAgcmVxdWlyZShzZWxmLmJhbGFuY2UgPj0gMCwgIkludmFsaWQgYmFsYW5jZSIpOwoKICAgICAgICBsZXQgZndkRmVlOiBJbnQgPSBjdHgucmVhZEZvcndhcmRGZWUoKTsgLy8gR2FzIGNoZWNrcwogICAgICAgIHJlcXVpcmUoY3R4LnZhbHVlID4gZndkRmVlICsgMiAqIHNlbGYuZ2FzQ29uc3VtcHRpb24gKyBzZWxmLm1pblRvbnNGb3JTdG9yYWdlLCAiSW52YWxpZCB2YWx1ZSAtIEJ1cm4iKTsKCiAgICAgICAgLy8gQnVybiB0b2tlbnMKICAgICAgICBzZW5kKFNlbmRQYXJhbWV0ZXJzeyAgCiAgICAgICAgICAgIHRvOiBzZWxmLm1hc3RlciwKICAgICAgICAgICAgdmFsdWU6IDAsCiAgICAgICAgICAgIG1vZGU6IFNlbmRSZW1haW5pbmdWYWx1ZSwKICAgICAgICAgICAgYm91bmNlOiB0cnVlLAogICAgICAgICAgICBib2R5OiBUb2tlbkJ1cm5Ob3RpZmljYXRpb257CiAgICAgICAgICAgICAgICBxdWVyeUlkOiBtc2cucXVlcnlJZCwKICAgICAgICAgICAgICAgIGFtb3VudDogbXNnLmFtb3VudCwKICAgICAgICAgICAgICAgIHJlc3BvbnNlX2Rlc3RpbmF0aW9uOiBzZWxmLm93bmVyCiAgICAgICAgICAgIH0udG9DZWxsKCkKICAgICAgICB9KTsKICAgIH0KCiAgICBnZXQgZnVuIG1zZ1ZhbHVlKHZhbHVlOiBJbnQpOiBJbnQgewogICAgICAgIGxldCBtc2dWYWx1ZTogSW50ID0gdmFsdWU7CiAgICAgICAgbGV0IHRvbkJhbGFuY2VCZWZvcmVNc2c6IEludCA9IG15QmFsYW5jZSgpIC0gbXNnVmFsdWU7CiAgICAgICAgbGV0IHN0b3JhZ2VGZWU6IEludCA9IHNlbGYubWluVG9uc0ZvclN0b3JhZ2UgLSBtaW4odG9uQmFsYW5jZUJlZm9yZU1zZywgc2VsZi5taW5Ub25zRm9yU3RvcmFnZSk7CiAgICAgICAgbXNnVmFsdWUgPSBtc2dWYWx1ZSAtIChzdG9yYWdlRmVlICsgc2VsZi5nYXNDb25zdW1wdGlvbik7CiAgICAgICAgcmV0dXJuIG1zZ1ZhbHVlOwogICAgfQoKICAgIGJvdW5jZWQoc3JjOiBib3VuY2VkPFRva2VuVHJhbnNmZXJJbnRlcm5hbD4pIHsKICAgICAgICBzZWxmLmJhbGFuY2UgPSBzZWxmLmJhbGFuY2UgKyBzcmMuYW1vdW50OwogICAgfQoKICAgIGJvdW5jZWQoc3JjOiBib3VuY2VkPFRva2VuQnVybk5vdGlmaWNhdGlvbj4pIHsKICAgICAgICBzZWxmLmJhbGFuY2UgPSBzZWxmLmJhbGFuY2UgKyBzcmMuYW1vdW50OwogICAgfQoKICAgIGdldCBmdW4gZ2V0X3dhbGxldF9kYXRhKCk6IEpldHRvbldhbGxldERhdGEgewogICAgICAgIHJldHVybiBKZXR0b25XYWxsZXREYXRhewogICAgICAgICAgICBiYWxhbmNlOiBzZWxmLmJhbGFuY2UsCiAgICAgICAgICAgIG93bmVyOiBzZWxmLm93bmVyLAogICAgICAgICAgICBtYXN0ZXI6IHNlbGYubWFzdGVyLAogICAgICAgICAgICB3YWxsZXRDb2RlOiAoaW5pdE9mIEpldHRvbkRlZmF1bHRXYWxsZXQoc2VsZi5tYXN0ZXIsIHNlbGYub3duZXIpKS5jb2RlCiAgICAgICAgfTsKICAgIH0KICAgIAogICAgLy8gYm91bmNlZChtc2c6IFNsaWNlKSB7CiAgICAvLyAgICAgLy8gUGFyc2UgYm91bmNlZCBtZXNzYWdlCiAgICAvLyAgICAgbXNnLnNraXBCaXRzKDMyKTsgLy8gMHhGRkZGRkZGRiAKICAgIC8vICAgICBsZXQgb3A6IEludCA9IG1zZy5sb2FkVWludCgzMik7CiAgICAvLyAgICAgbGV0IHF1ZXJ5SWQ6IEludCA9IG1zZy5sb2FkVWludCg2NCk7CiAgICAvLyAgICAgbGV0IGpldHRvbkFtb3VudDogSW50ID0gbXNnLmxvYWRDb2lucygpOwogICAgLy8gICAgIHJlcXVpcmUob3AgPT0gMHgxNzhkNDUxOSB8fCBvcCA9PSAweDdiZGQ5N2RlLCAiSW52YWxpZCBib3VuY2VkIG1lc3NhZ2UiKTsKICAgIC8vICAgICBzZWxmLmJhbGFuY2UgPSBzZWxmLmJhbGFuY2UgKyBqZXR0b25BbW91bnQ7IC8vIFVwZGF0ZSBiYWxhbmNlCiAgICAvLyB9Cn0="},"compiler":{"name":"tact","version":"1.1.0","parameters":"{\"entrypoint\":\"./sources/contract.tact\",\"options\":{}}"}} \ No newline at end of file +{"name":"SampleJetton","code":"te6ccgECIAEABpoAART/APSkE/S88sgLAQIBYgIDAurQAdDTAwFxsKMB+kABINdJgQELuvLgiCDXCwoggQT/uvLQiYMJuvLgiFRQUwNvBPhhAvhi2zxVFNs88uCCyPhDAcx/AcoAVUBQVPoCWCDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IjPFswSygAB+gLJ7VQZBAIBIA8QAvbtou37AZIwf+BwIddJwh+VMCDXCx/eIIIQ/HCL0rqO2zDTHwGCEPxwi9K68uCBgQEB1wD6QAEg10mBAQu68uCIINcLCiCBBP+68tCJgwm68uCIEmwS+EFvJBAjXwMmgTjGAscF8vSBDmgk8vSBL9FTcqAku/L0URXbPH8KBQNw4CCCEK8comq6jpsw0x8BghCvHKJquvLggdQBMVVA2zwyEDRDAH/gIIIQe92X3rrjAsAAkTDjDXAGBwgAEvhCUkDHBfLghALcMNMfAYIQe92X3rry4IHTP/oA+kABINdJgQELuvLgiCDXCwoggQT/uvLQiYMJuvLgiEMwbBMQRxA2RXYm2zxQR6ElbrOOoHBwgEIHyAGCENUydttYyx/LP8kQSEEwFxAkECNtbds8kjQ04kQTAn8JDQLe+QEggvD8vrmkgJZkd0gGOcfOpKV4qmoROykDsm0BvDhGY+zu9rqOoTD4QW8kECNfA4EOaCPy9IEv0SamZCO78vSAZCXbPH/bMeCC8NwATFt1vnQ3a9ed+HE/I5BiDMijCVBosFg+soyjrIuguuMCCgsBtPhBbyQQI18DVVDbPAGBEU0CcFnIcAHLAXMBywFwAcsAEszMyfkAyHIBywFwAcsAEsoHy//J0CDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IgXxwUW8vRVAxwD9IFI7CXy9FFxoFVB2zxccFnIcAHLAXMBywFwAcsAEszMyfkAyHIBywFwAcsAEsoHy//J0CDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4Ihwf4BAIvgoIcjJ0BA1EE8QIwIREALIVVDbPMlGUBBLEDpAuhBGEEXbPEA0HAwNAC4x+EFvJBAjXwMjgTjGAscF8vRwAX/bMQCqghAXjUUZUAfLHxXLP1AD+gIBINdJgQELuvLgiCDXCwoggQT/uvLQiYMJuvLgiM8WASDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IjPFgH6AgHPFgHKyHEBygFQBwHKAHABygJQBSDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IjPFlAD+gJwAcpoI26zkX+TJG6z4pczMwFwAcoA4w0hbrOcfwHKAAEgbvLQgAHMlTFwAcoA4skB+wAOAJh/AcoAyHABygBwAcoAJG6znX8BygAEIG7y0IBQBMyWNANwAcoA4iRus51/AcoABCBu8tCAUATMljQDcAHKAOJwAcoAAn8BygACyVjMAhG+KO7Z5tnjYowZEQIBIBITAAIjAgEgFBUCAUgeHwIBWBYXAN23ejBOC52Hq6WVz2PQnYc6yVCjbNBOE7rGpaVsj5ZkWnXlv74sRzBOBAq4A3AM7HKZywdVyOS2WHBOE7Lpy1Zp2W5nQdLNsozdFJBOGEyIpMmvt8kXL2wztOq6QLBOCBnOrTzivzpKFgOsLcTI9lACTa28kGukwICF3XlwRBBrhYUQQIJ/3XloRMGE3XlwRG2eKoJtnjYowBkYAhGvFu2ebZ42KsAZGgGG2zxwWchwAcsBcwHLAXABywASzMzJ+QDIcgHLAXABywASygfL/8nQINdJgQELuvLgiCDXCwoggQT/uvLQiYMJuvLgiBwB4O1E0NQB+GPSAAGOK/oA+kABINdJgQELuvLgiCDXCwoggQT/uvLQiYMJuvLgiAHU0gD6AFVAbBXg+CjXCwqDCbry4In6QAEg10mBAQu68uCIINcLCiCBBP+68tCJgwm68uCIAdSBAQHXAFUgA9FY2zwbARb4KNs8MFRlMFRmYBwACnBVIH8BAQ74Q/goWNs8HQDaAtD0BDBtAYIA2K8BgBD0D2+h8uCHAYIA2K8iAoAQ9BfIAcj0AMkBzHABygBAA1kg10mBAQu68uCIINcLCiCBBP+68tCJgwm68uCIzxYBINdJgQELuvLgiCDXCwoggQT/uvLQiYMJuvLgiM8WyQARsK+7UTQ0gABgAHWybuNDVpcGZzOi8vUW1ZVjlLYURwR3ZZZWk0eVdVS0VoUm1KYmVCMkhQZDNEeE1Bd3BvUHhjUmVvM4IA==","abi":"{\"name\":\"SampleJetton\",\"types\":[{\"name\":\"StateInit\",\"header\":null,\"fields\":[{\"name\":\"code\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":false}},{\"name\":\"data\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":false}}]},{\"name\":\"Context\",\"header\":null,\"fields\":[{\"name\":\"bounced\",\"type\":{\"kind\":\"simple\",\"type\":\"bool\",\"optional\":false}},{\"name\":\"sender\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"value\",\"type\":{\"kind\":\"simple\",\"type\":\"int\",\"optional\":false,\"format\":257}},{\"name\":\"raw\",\"type\":{\"kind\":\"simple\",\"type\":\"slice\",\"optional\":false}}]},{\"name\":\"SendParameters\",\"header\":null,\"fields\":[{\"name\":\"bounce\",\"type\":{\"kind\":\"simple\",\"type\":\"bool\",\"optional\":false}},{\"name\":\"to\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"value\",\"type\":{\"kind\":\"simple\",\"type\":\"int\",\"optional\":false,\"format\":257}},{\"name\":\"mode\",\"type\":{\"kind\":\"simple\",\"type\":\"int\",\"optional\":false,\"format\":257}},{\"name\":\"body\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":true}},{\"name\":\"code\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":true}},{\"name\":\"data\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":true}}]},{\"name\":\"ChangeOwner\",\"header\":2174598809,\"fields\":[{\"name\":\"queryId\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}},{\"name\":\"newOwner\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}}]},{\"name\":\"ChangeOwnerOk\",\"header\":846932810,\"fields\":[{\"name\":\"queryId\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}},{\"name\":\"newOwner\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}}]},{\"name\":\"JettonData\",\"header\":null,\"fields\":[{\"name\":\"total_supply\",\"type\":{\"kind\":\"simple\",\"type\":\"int\",\"optional\":false,\"format\":257}},{\"name\":\"mintable\",\"type\":{\"kind\":\"simple\",\"type\":\"bool\",\"optional\":false}},{\"name\":\"owner\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"content\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":false}},{\"name\":\"wallet_code\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":false}}]},{\"name\":\"JettonWalletData\",\"header\":null,\"fields\":[{\"name\":\"balance\",\"type\":{\"kind\":\"simple\",\"type\":\"int\",\"optional\":false,\"format\":257}},{\"name\":\"owner\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"master\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"wallet_code\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":false}}]},{\"name\":\"TokenTransfer\",\"header\":260734629,\"fields\":[{\"name\":\"query_id\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}},{\"name\":\"amount\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":\"coins\"}},{\"name\":\"destination\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"response_destination\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"custom_payload\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":true}},{\"name\":\"forward_ton_amount\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":\"coins\"}},{\"name\":\"forward_payload\",\"type\":{\"kind\":\"simple\",\"type\":\"slice\",\"optional\":false,\"format\":\"remainder\"}}]},{\"name\":\"TokenTransferInternal\",\"header\":395134233,\"fields\":[{\"name\":\"query_id\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}},{\"name\":\"amount\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":\"coins\"}},{\"name\":\"from\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"response_destination\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"forward_ton_amount\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":\"coins\"}},{\"name\":\"forward_payload\",\"type\":{\"kind\":\"simple\",\"type\":\"slice\",\"optional\":false,\"format\":\"remainder\"}}]},{\"name\":\"TokenNotification\",\"header\":1935855772,\"fields\":[{\"name\":\"query_id\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}},{\"name\":\"amount\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":\"coins\"}},{\"name\":\"from\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"forward_payload\",\"type\":{\"kind\":\"simple\",\"type\":\"slice\",\"optional\":false,\"format\":\"remainder\"}}]},{\"name\":\"TokenBurn\",\"header\":1499400124,\"fields\":[{\"name\":\"query_id\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}},{\"name\":\"amount\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":\"coins\"}},{\"name\":\"response_destination\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"custom_payload\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":true}}]},{\"name\":\"TokenBurnNotification\",\"header\":2078119902,\"fields\":[{\"name\":\"query_id\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}},{\"name\":\"amount\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":\"coins\"}},{\"name\":\"response_destination\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}}]},{\"name\":\"TokenExcesses\",\"header\":3576854235,\"fields\":[{\"name\":\"query_id\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}}]},{\"name\":\"TokenUpdateContent\",\"header\":2937889386,\"fields\":[{\"name\":\"content\",\"type\":{\"kind\":\"simple\",\"type\":\"cell\",\"optional\":false}}]},{\"name\":\"ProvideWalletAddress\",\"header\":745978227,\"fields\":[{\"name\":\"query_id\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}},{\"name\":\"owner_address\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"include_address\",\"type\":{\"kind\":\"simple\",\"type\":\"bool\",\"optional\":false}}]},{\"name\":\"TakeWalletAddress\",\"header\":3513996288,\"fields\":[{\"name\":\"query_id\",\"type\":{\"kind\":\"simple\",\"type\":\"uint\",\"optional\":false,\"format\":64}},{\"name\":\"wallet_address\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"owner_address\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":true}}]},{\"name\":\"Mint\",\"header\":4235234258,\"fields\":[{\"name\":\"amount\",\"type\":{\"kind\":\"simple\",\"type\":\"int\",\"optional\":false,\"format\":257}},{\"name\":\"receiver\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}}]}],\"receivers\":[{\"receiver\":\"internal\",\"message\":{\"kind\":\"typed\",\"type\":\"Mint\"}},{\"receiver\":\"internal\",\"message\":{\"kind\":\"text\",\"text\":\"Mint: 100\"}},{\"receiver\":\"internal\",\"message\":{\"kind\":\"text\",\"text\":\"Owner: MintClose\"}},{\"receiver\":\"internal\",\"message\":{\"kind\":\"typed\",\"type\":\"TokenUpdateContent\"}},{\"receiver\":\"internal\",\"message\":{\"kind\":\"typed\",\"type\":\"TokenBurnNotification\"}}],\"getters\":[{\"name\":\"get_jetton_data\",\"arguments\":[],\"returnType\":{\"kind\":\"simple\",\"type\":\"JettonData\",\"optional\":false}},{\"name\":\"get_wallet_address\",\"arguments\":[{\"name\":\"owner\",\"type\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}}],\"returnType\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}},{\"name\":\"owner\",\"arguments\":[],\"returnType\":{\"kind\":\"simple\",\"type\":\"address\",\"optional\":false}}],\"errors\":{\"2\":{\"message\":\"Stack undeflow\"},\"3\":{\"message\":\"Stack overflow\"},\"4\":{\"message\":\"Integer overflow\"},\"5\":{\"message\":\"Integer out of expected range\"},\"6\":{\"message\":\"Invalid opcode\"},\"7\":{\"message\":\"Type check error\"},\"8\":{\"message\":\"Cell overflow\"},\"9\":{\"message\":\"Cell underflow\"},\"10\":{\"message\":\"Dictionary error\"},\"13\":{\"message\":\"Out of gas error\"},\"32\":{\"message\":\"Method ID not found\"},\"34\":{\"message\":\"Action is invalid or not supported\"},\"37\":{\"message\":\"Not enough TON\"},\"38\":{\"message\":\"Not enough extra-currencies\"},\"128\":{\"message\":\"Null reference exception\"},\"129\":{\"message\":\"Invalid serialization prefix\"},\"130\":{\"message\":\"Invalid incoming message\"},\"131\":{\"message\":\"Constraints error\"},\"132\":{\"message\":\"Access denied\"},\"133\":{\"message\":\"Contract stopped\"},\"134\":{\"message\":\"Invalid argument\"},\"135\":{\"message\":\"Code of a contract was not found\"},\"136\":{\"message\":\"Invalid address\"},\"137\":{\"message\":\"Masterchain support is not enabled for this contract\"},\"3688\":{\"message\":\"Not mintable\"},\"4159\":{\"message\":\"Invalid value!!\"},\"4429\":{\"message\":\"Invalid sender\"},\"12241\":{\"message\":\"Max supply exceeded\"},\"14534\":{\"message\":\"Not owner\"},\"18668\":{\"message\":\"Can't Mint Anymore\"},\"23951\":{\"message\":\"Insufficient gas\"},\"42708\":{\"message\":\"Invalid sender!\"},\"43422\":{\"message\":\"Invalid value - Burn\"},\"62972\":{\"message\":\"Invalid balance\"}},\"interfaces\":[\"org.ton.introspection.v0\",\"org.ton.abi.ipfs.v0\",\"org.ton.deploy.lazy.v0\",\"org.ton.chain.workchain.v0\",\"org.ton.jetton.master\",\"org.ton.ownable\"]}","init":{"kind":"direct","args":[{"name":"owner","type":{"kind":"simple","type":"address","optional":false}},{"name":"content","type":{"kind":"simple","type":"cell","optional":false}},{"name":"max_supply","type":{"kind":"simple","type":"int","optional":false,"format":257}}],"prefix":{"bits":1,"value":0},"deployment":{"kind":"system-cell","system":"te6cckECQwEADiMAAQHAAQIBICICAQW+xXwDART/APSkE/S88sgLBAIBYg4FAgEgCgYCASAJBwIBSCkIAHWybuNDVpcGZzOi8vUW1hZFdVZWlqRllEODFneVVUemsxanRpS25TVVFGVWVXcTRka3RGOHBpTG5Ba4IAC5u70YJwXOw9XSyuex6E7DnWSoUbZoJwndY1LStkfLMi068t/fFiOYJwIFXAG4BnY5TOWDquRyWyw4JwnZdOWrNOy3M6DpZtlGbopIJwndHgA+WzYDyfyDqyWayiE4AgEgDQsCEbuwLbPNs8bDSB8MARj4Q1MS2zwwVGMwUjBAAhW5tm2zxVAts8bDGB8YA3rQAdDTAwFxsKMB+kABINdJgQELuvLgiCDXCwoggQT/uvLQiYMJuvLgiFRQUwNvBPhhAvhi2zxVEts88uCCHxAPAKbI+EMBzH8BygBVIFAjgQEBzwABINdJgQELuvLgiCDXCwoggQT/uvLQiYMJuvLgiM8WASDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IjPFsntVALuAY5bgCDXIXAh10nCH5UwINcLH94gghAXjUUZuo4aMNMfAYIQF41FGbry4IHTP/oAWWwSMROgAn/gghB73Zfeuo4Z0x8BghB73ZfeuvLggdM/+gBZbBIxE6ACf+Awf+BwIddJwh+VMCDXCx/eIIIQD4p+pbrjAiAaEQTGghAXjUUZuo8IMNs8bBbbPH/gIIIQWV8HvLqOvzDTHwGCEFlfB7y68uCB0z/6APpAASDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IgB0gABkdSSbQHiVTBsFOCCECx2uXO6GRYVEgF6jrjTHwGCECx2uXO68uCB0z/6QAEg10mBAQu68uCIINcLCiCBBP+68tCJgwm68uCIAdIAVSBsE9s8f+AwcBMC1oFdj/hBbyQTXwOCCF0UIL7y9PhDU0LbPHBZyHABywFzAcsBcAHLABLMzMn5AMhyAcsBcAHLABLKB8v/ydAg10mBAQu68uCIINcLCiCBBP+68tCJgwm68uCIE20EkjMSkTLi+EJwgEBQNH8GQBQBxshVIIIQ0XNUAFAEyx8Syz8BINdJgQELuvLgiCDXCwoggQT/uvLQiYMJuvLgiM8WASBulTBwAcsBjh4g10mBAQu68uCIINcLCiCBBP+68tCJgwm68uCIzxbiyV4hFEMwbW3bPDwC+Fv4QW8kgRFNU4PHBfL0UYShggD1/CHC//L0QzBSOds8ggCpngGCCTEtAKCCCJiWgKASvPL0cIBAA39RNshVIIIQe92X3lAEyx8Syz8B+gIBINdJgQELuvLgiCDXCwoggQT/uvLQiYMJuvLgiM8WySREFFAzFEMwbW3bPH8dPAT2+EFvJFOixwWzjtP4Q1O42zwBggCm1AJwWchwAcsBcwHLAXABywASzMzJ+QDIcgHLAXABywASygfL/8nQINdJgQELuvLgiCDXCwoggQT/uvLQiYMJuvLgiFJAxwXy9N5RyKCCAPX8IcL/8vRAuivbPBA0S83bPFGjoVAKQBgdFwL2oSLCAI7Kc3AoSBNQdMhVMIIQc2LQnFAFyx8Tyz8B+gIBINdJgQELuvLgiCDXCwoggQT/uvLQiYMJuvLgiM8WAc8WySdGFFBVFEMwbW3bPAGUEDVsQeIhbrOOm3ADyAGCENUydttYyx/LP8lBMHIQJEMAbW3bPJJfA+IBPDwALPgnbxAhoYIImJaAZrYIoYIImJaAoKEAstMfAYIQF41FGbry4IHTP/oA+kABINdJgQELuvLgiCDXCwoggQT/uvLQiYMJuvLgiAH6QAEg10mBAQu68uCIINcLCiCBBP+68tCJgwm68uCIAfoAUVUVFEMwAhAw2zxsF9s8fx4bBIoy+EFvJIERTVPDxwXy9FRzISPbPEQwUkTbPKCCCcnDgAGggRA/AYIImJaAtggSvPL0UYShggD1/CHC//L0+ENUIHXbPFwdHUAcAsJwWchwAcsBcwHLAXABywASzMzJ+QDIcgHLAXABywASygfL/8nQINdJgQELuvLgiCDXCwoggQT/uvLQiYMJuvLgiFB2cIBAfyxIE1DnyFVQ2zzJEFZeIhA5AhA2EDUQNNs8PjwAZGwx+kABINdJgQELuvLgiCDXCwoggQT/uvLQiYMJuvLgiDD6ADFx1yH6ADH6ADCnA6sAAMbTHwGCEA+KfqW68uCB0z/6APpAASDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IgB+kABINdJgQELuvLgiCDXCwoggQT/uvLQiYMJuvLgiAHSAAGR1JJtAeL6AFFmFhUUQzABwO1E0NQB+GPSAAGOSIEBAdcA+kABINdJgQELuvLgiCDXCwoggQT/uvLQiYMJuvLgiAH6QAEg10mBAQu68uCIINcLCiCBBP+68tCJgwm68uCIQzBsE+D4KNcLCoMJuvLgiSABivpAASDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IgB+kABINdJgQELuvLgiCDXCwoggQT/uvLQiYMJuvLgiBIC0QHbPCEABHACAQW9XCwjART/APSkE/S88sgLJAIBYjMlAgEgMSYCASAqJwIBSCkoAHWybuNDVpcGZzOi8vUW1ZVjlLYURwR3ZZZWk0eVdVS0VoUm1KYmVCMkhQZDNEeE1Bd3BvUHhjUmVvM4IAARsK+7UTQ0gABgAgEgLCsA3bd6ME4LnYerpZXPY9CdhzrJUKNs0E4TusalpWyPlmRadeW/vixHME4ECrgDcAzscpnLB1XI5LZYcE4TsunLVmnZbmdB0s2yjN0UkE4YTIikya+3yRcvbDO06rpAsE4IGc6tPOK/OkoWA6wtxMj2UAIBWC8tAhGvFu2ebZ42KsBBLgEW+CjbPDBUZTBUZmA/Ak2tvJBrpMCAhd15cEQQa4WFEECCf915aETBhN15cERtniqCbZ42KMBBMAGG2zxwWchwAcsBcwHLAXABywASzMzJ+QDIcgHLAXABywASygfL/8nQINdJgQELuvLgiCDXCwoggQT/uvLQiYMJuvLgiD8CEb4o7tnm2eNijEEyAAIjAurQAdDTAwFxsKMB+kABINdJgQELuvLgiCDXCwoggQT/uvLQiYMJuvLgiFRQUwNvBPhhAvhi2zxVFNs88uCCyPhDAcx/AcoAVUBQVPoCWCDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IjPFswSygAB+gLJ7VRBNAL27aLt+wGSMH/gcCHXScIflTAg1wsf3iCCEPxwi9K6jtsw0x8BghD8cIvSuvLggYEBAdcA+kABINdJgQELuvLgiCDXCwoggQT/uvLQiYMJuvLgiBJsEvhBbyQQI18DJoE4xgLHBfL0gQ5oJPL0gS/RU3KgJLvy9FEV2zx/OzUDcOAgghCvHKJquo6bMNMfAYIQrxyiarry4IHUATFVQNs8MhA0QwB/4CCCEHvdl9664wLAAJEw4w1wOjg2At75ASCC8Py+uaSAlmR3SAY5x86kpXiqahE7KQOybQG8OEZj7O72uo6hMPhBbyQQI18DgQ5oI/L0gS/RJqZkI7vy9IBkJds8f9sx4ILw3ABMW3W+dDdr1534cT8jkGIMyKMJUGiwWD6yjKOsi6C64wI7NwAuMfhBbyQQI18DI4E4xgLHBfL0cAF/2zEC3DDTHwGCEHvdl9668uCB0z/6APpAASDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IhDMGwTEEcQNkV2Jts8UEehJW6zjqBwcIBCB8gBghDVMnbbWMsfyz/JEEhBMBcQJBAjbW3bPJI0NOJEEwJ/OTwBtPhBbyQQI18DVVDbPAGBEU0CcFnIcAHLAXMBywFwAcsAEszMyfkAyHIBywFwAcsAEsoHy//J0CDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IgXxwUW8vRVAz8AEvhCUkDHBfLghAP0gUjsJfL0UXGgVUHbPFxwWchwAcsBcwHLAXABywASzMzJ+QDIcgHLAXABywASygfL/8nQINdJgQELuvLgiCDXCwoggQT/uvLQiYMJuvLgiHB/gEAi+CghyMnQEDUQTxAjAhEQAshVUNs8yUZQEEsQOkC6EEYQRds8QDQ/PjwByshxAcoBUAcBygBwAcoCUAUg10mBAQu68uCIINcLCiCBBP+68tCJgwm68uCIzxZQA/oCcAHKaCNus5F/kyRus+KXMzMBcAHKAOMNIW6znH8BygABIG7y0IABzJUxcAHKAOLJAfsAPQCYfwHKAMhwAcoAcAHKACRus51/AcoABCBu8tCAUATMljQDcAHKAOIkbrOdfwHKAAQgbvLQgFAEzJY0A3ABygDicAHKAAJ/AcoAAslYzACqghAXjUUZUAfLHxXLP1AD+gIBINdJgQELuvLgiCDXCwoggQT/uvLQiYMJuvLgiM8WASDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IjPFgH6AgHPFgEO+EP4KFjbPEAA2gLQ9AQwbQGCANivAYAQ9A9vofLghwGCANivIgKAEPQXyAHI9ADJAcxwAcoAQANZINdJgQELuvLgiCDXCwoggQT/uvLQiYMJuvLgiM8WASDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IjPFskB4O1E0NQB+GPSAAGOK/oA+kABINdJgQELuvLgiCDXCwoggQT/uvLQiYMJuvLgiAHU0gD6AFVAbBXg+CjXCwqDCbry4In6QAEg10mBAQu68uCIINcLCiCBBP+68tCJgwm68uCIAdSBAQHXAFUgA9FY2zxCAApwVSB/AUWuOOA="}},"sources":{"sources/jetton.tact":"aW1wb3J0ICJAc3RkbGliL293bmFibGUiOwppbXBvcnQgIi4vbWVzc2FnZXMiOwoKLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC8vCkBpbnRlcmZhY2UoIm9yZy50b24uamV0dG9uLm1hc3RlciIpCnRyYWl0IEpldHRvbiB3aXRoIE93bmFibGUgewoKICAgIHRvdGFsX3N1cHBseTogSW50OyAvLyBBbHJlYWR5IHNldCBpbml0aWFsbHkgCiAgICBtaW50YWJsZTogQm9vbDsKICAgIG93bmVyOiBBZGRyZXNzOwogICAgY29udGVudDogQ2VsbDsKICAgIAogICAgcmVjZWl2ZShtc2c6IFRva2VuVXBkYXRlQ29udGVudCkgewogICAgICAgIHNlbGYucmVxdWlyZU93bmVyKCk7ICAgICAgICAgICAgICAgIC8vIEFsbG93IGNoYW5naW5nIGNvbnRlbnQgb25seSBieSBvd25lcgogICAgICAgIHNlbGYuY29udGVudCA9IG1zZy5jb250ZW50OyAgICAgICAgIC8vIFVwZGF0ZSBjb250ZW50CiAgICB9CgogICAgcmVjZWl2ZShtc2c6IFRva2VuQnVybk5vdGlmaWNhdGlvbikgewogICAgICAgIHNlbGYucmVxdWlyZVNlbmRlckFzV2FsbGV0T3duZXIobXNnLnJlc3BvbnNlX2Rlc3RpbmF0aW9uKTsgICAgICAgLy8gQ2hlY2sgd2FsbGV0CiAgICAgICAgc2VsZi50b3RhbF9zdXBwbHkgPSBzZWxmLnRvdGFsX3N1cHBseSAtIG1zZy5hbW91bnQ7IC8vIFVwZGF0ZSBzdXBwbHkKICAgICAgICBpZiAobXNnLnJlc3BvbnNlX2Rlc3RpbmF0aW9uICE9IG51bGwpIHsgLy8gQ2FzaGJhY2sKICAgICAgICAgICAgc2VuZChTZW5kUGFyYW1ldGVyc3sKICAgICAgICAgICAgICAgIHRvOiBtc2cucmVzcG9uc2VfZGVzdGluYXRpb24sIAogICAgICAgICAgICAgICAgdmFsdWU6IDAsCiAgICAgICAgICAgICAgICBib3VuY2U6IGZhbHNlLAogICAgICAgICAgICAgICAgbW9kZTogU2VuZFJlbWFpbmluZ1ZhbHVlICsgU2VuZElnbm9yZUVycm9ycywKICAgICAgICAgICAgICAgIGJvZHk6IFRva2VuRXhjZXNzZXN7IHF1ZXJ5X2lkOiBtc2cucXVlcnlfaWQgfS50b0NlbGwoKQogICAgICAgICAgICB9KTsKICAgICAgICB9CiAgICB9CgogICAgLy8gUHJpdmF0ZSBNZXRob2RzIC8vIAogICAgLy8gQHRvIFRoZSBBZGRyZXNzIHJlY2VpdmUgdGhlIEpldHRvbiB0b2tlbiBhZnRlciBtaW50aW5nCiAgICAvLyBAYW1vdW50IFRoZSBhbW91bnQgb2YgSmV0dG9uIHRva2VuIGJlaW5nIG1pbnRlZAogICAgLy8gQHJlc3BvbnNlX2Rlc3RpbmF0aW9uIFRoZSBwcmV2aW91cyBvd25lciBhZGRyZXNzCiAgICBmdW4gbWludCh0bzogQWRkcmVzcywgYW1vdW50OiBJbnQsIHJlc3BvbnNlX2Rlc3RpbmF0aW9uOiBBZGRyZXNzKSB7CiAgICAgICAgcmVxdWlyZShzZWxmLm1pbnRhYmxlLCAiQ2FuJ3QgTWludCBBbnltb3JlIik7CiAgICAgICAgc2VsZi50b3RhbF9zdXBwbHkgPSBzZWxmLnRvdGFsX3N1cHBseSArIGFtb3VudDsgLy8gVXBkYXRlIHRvdGFsIHN1cHBseQoKICAgICAgICBsZXQgd2luaXQ6IFN0YXRlSW5pdCA9IHNlbGYuZ2V0SmV0dG9uV2FsbGV0SW5pdCh0byk7IC8vIENyZWF0ZSBtZXNzYWdlCiAgICAgICAgc2VuZChTZW5kUGFyYW1ldGVyc3sKICAgICAgICAgICAgdG86IGNvbnRyYWN0QWRkcmVzcyh3aW5pdCksIAogICAgICAgICAgICB2YWx1ZTogMCwgCiAgICAgICAgICAgIGJvdW5jZTogdHJ1ZSwKICAgICAgICAgICAgbW9kZTogU2VuZFJlbWFpbmluZ1ZhbHVlLAogICAgICAgICAgICBib2R5OiBUb2tlblRyYW5zZmVySW50ZXJuYWx7IAogICAgICAgICAgICAgICAgcXVlcnlfaWQ6IDAsCiAgICAgICAgICAgICAgICBhbW91bnQ6IGFtb3VudCwKICAgICAgICAgICAgICAgIGZyb206IG15QWRkcmVzcygpLAogICAgICAgICAgICAgICAgcmVzcG9uc2VfZGVzdGluYXRpb246IHJlc3BvbnNlX2Rlc3RpbmF0aW9uLAogICAgICAgICAgICAgICAgZm9yd2FyZF90b25fYW1vdW50OiAwLAogICAgICAgICAgICAgICAgZm9yd2FyZF9wYXlsb2FkOiBlbXB0eVNsaWNlKCkKICAgICAgICAgICAgfS50b0NlbGwoKSwKICAgICAgICAgICAgY29kZTogd2luaXQuY29kZSwKICAgICAgICAgICAgZGF0YTogd2luaXQuZGF0YQogICAgICAgIH0pOwogICAgfQoKICAgIGZ1biByZXF1aXJlU2VuZGVyQXNXYWxsZXRPd25lcihvd25lcjogQWRkcmVzcykgewogICAgICAgIGxldCBjdHg6IENvbnRleHQgPSBjb250ZXh0KCk7CiAgICAgICAgbGV0IHdpbml0OiBTdGF0ZUluaXQgPSBzZWxmLmdldEpldHRvbldhbGxldEluaXQob3duZXIpOwogICAgICAgIHJlcXVpcmUoY29udHJhY3RBZGRyZXNzKHdpbml0KSA9PSBjdHguc2VuZGVyLCAiSW52YWxpZCBzZW5kZXIiKTsKICAgIH0KCiAgICB2aXJ0dWFsIGZ1biBnZXRKZXR0b25XYWxsZXRJbml0KGFkZHJlc3M6IEFkZHJlc3MpOiBTdGF0ZUluaXQgewogICAgICAgIHJldHVybiBpbml0T2YgSmV0dG9uRGVmYXVsdFdhbGxldChteUFkZHJlc3MoKSwgYWRkcmVzcyk7CiAgICB9CgogICAgLy8gPT09PT09IEdldCBNZXRob2RzID09PT09PSAvLwogICAgZ2V0IGZ1biBnZXRfamV0dG9uX2RhdGEoKTogSmV0dG9uRGF0YSB7CiAgICAgICAgbGV0IGNvZGU6IENlbGwgPSBzZWxmLmdldEpldHRvbldhbGxldEluaXQobXlBZGRyZXNzKCkpLmNvZGU7CiAgICAgICAgcmV0dXJuIEpldHRvbkRhdGF7IAogICAgICAgICAgICB0b3RhbF9zdXBwbHk6IHNlbGYudG90YWxfc3VwcGx5LCAKICAgICAgICAgICAgbWludGFibGU6IHNlbGYubWludGFibGUsIAogICAgICAgICAgICBvd25lcjogc2VsZi5vd25lciwgCiAgICAgICAgICAgIGNvbnRlbnQ6IHNlbGYuY29udGVudCwgCiAgICAgICAgICAgIHdhbGxldF9jb2RlOiBjb2RlCiAgICAgICAgfTsKICAgIH0KCiAgICBnZXQgZnVuIGdldF93YWxsZXRfYWRkcmVzcyhvd25lcjogQWRkcmVzcyk6IEFkZHJlc3MgewogICAgICAgIGxldCB3aW5pdDogU3RhdGVJbml0ID0gc2VsZi5nZXRKZXR0b25XYWxsZXRJbml0KG93bmVyKTsKICAgICAgICByZXR1cm4gY29udHJhY3RBZGRyZXNzKHdpbml0KTsKICAgIH0KfQoKLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC8vCkBpbnRlcmZhY2UoIm9yZy50b24uamV0dG9uLndhbGxldCIpCmNvbnRyYWN0IEpldHRvbkRlZmF1bHRXYWxsZXQgewogICAgY29uc3QgbWluVG9uc0ZvclN0b3JhZ2U6IEludCA9IHRvbigiMC4wMSIpOwogICAgY29uc3QgZ2FzQ29uc3VtcHRpb246IEludCA9IHRvbigiMC4wMSIpOwoKICAgIGJhbGFuY2U6IEludDsKICAgIG93bmVyOiBBZGRyZXNzOwogICAgbWFzdGVyOiBBZGRyZXNzOwoKICAgIGluaXQobWFzdGVyOiBBZGRyZXNzLCBvd25lcjogQWRkcmVzcykgewogICAgICAgIHNlbGYuYmFsYW5jZSA9IDA7CiAgICAgICAgc2VsZi5vd25lciA9IG93bmVyOwogICAgICAgIHNlbGYubWFzdGVyID0gbWFzdGVyOwogICAgfQoKICAgIHJlY2VpdmUobXNnOiBUb2tlblRyYW5zZmVyKSB7IC8vIDB4ZjhhN2VhNQogICAgICAgIGxldCBjdHg6IENvbnRleHQgPSBjb250ZXh0KCk7IC8vIENoZWNrIHNlbmRlcgogICAgICAgIHJlcXVpcmUoY3R4LnNlbmRlciA9PSBzZWxmLm93bmVyLCAiSW52YWxpZCBzZW5kZXIiKTsKCiAgICAgICAgLy8gR2FzIGNoZWNrcwogICAgICAgIGxldCBmd2RfZmVlOiBJbnQgPSBjdHgucmVhZEZvcndhcmRGZWUoKSArIGN0eC5yZWFkRm9yd2FyZEZlZSgpOyAgCiAgICAgICAgbGV0IGZpbmFsOiBJbnQgPSAgMiAqIHNlbGYuZ2FzQ29uc3VtcHRpb24gKyBzZWxmLm1pblRvbnNGb3JTdG9yYWdlICsgZndkX2ZlZTsKICAgICAgICByZXF1aXJlKGN0eC52YWx1ZSA+IG1pbihmaW5hbCwgdG9uKCIwLjAxIikpLCAiSW52YWxpZCB2YWx1ZSEhIik7IAoKICAgICAgICAvLyBVcGRhdGUgYmFsYW5jZQogICAgICAgIHNlbGYuYmFsYW5jZSA9IHNlbGYuYmFsYW5jZSAtIG1zZy5hbW91bnQ7IAogICAgICAgIHJlcXVpcmUoc2VsZi5iYWxhbmNlID49IDAsICJJbnZhbGlkIGJhbGFuY2UiKTsKCiAgICAgICAgbGV0IGluaXQ6IFN0YXRlSW5pdCA9IGluaXRPZiBKZXR0b25EZWZhdWx0V2FsbGV0KHNlbGYubWFzdGVyLCBtc2cuZGVzdGluYXRpb24pOyAgCiAgICAgICAgbGV0IHdhbGxldF9hZGRyZXNzOiBBZGRyZXNzID0gY29udHJhY3RBZGRyZXNzKGluaXQpOwogICAgICAgIHNlbmQoU2VuZFBhcmFtZXRlcnN7CiAgICAgICAgICAgIHRvOiB3YWxsZXRfYWRkcmVzcywgCiAgICAgICAgICAgIHZhbHVlOiAwLAogICAgICAgICAgICBtb2RlOiBTZW5kUmVtYWluaW5nVmFsdWUsIAogICAgICAgICAgICBib3VuY2U6IHRydWUsCiAgICAgICAgICAgIGJvZHk6IFRva2VuVHJhbnNmZXJJbnRlcm5hbHsKICAgICAgICAgICAgICAgIHF1ZXJ5X2lkOiBtc2cucXVlcnlfaWQsCiAgICAgICAgICAgICAgICBhbW91bnQ6IG1zZy5hbW91bnQsCiAgICAgICAgICAgICAgICBmcm9tOiBzZWxmLm93bmVyLAogICAgICAgICAgICAgICAgcmVzcG9uc2VfZGVzdGluYXRpb246IG1zZy5yZXNwb25zZV9kZXN0aW5hdGlvbiwKICAgICAgICAgICAgICAgIGZvcndhcmRfdG9uX2Ftb3VudDogbXNnLmZvcndhcmRfdG9uX2Ftb3VudCwKICAgICAgICAgICAgICAgIGZvcndhcmRfcGF5bG9hZDogbXNnLmZvcndhcmRfcGF5bG9hZAogICAgICAgICAgICB9LnRvQ2VsbCgpLAogICAgICAgICAgICBjb2RlOiBpbml0LmNvZGUsCiAgICAgICAgICAgIGRhdGE6IGluaXQuZGF0YQogICAgICAgIH0pOwogICAgfQoKICAgIHJlY2VpdmUobXNnOiBUb2tlblRyYW5zZmVySW50ZXJuYWwpIHsgLy8gMHgxNzhkNDUxOQogICAgICAgIGxldCBjdHg6IENvbnRleHQgPSBjb250ZXh0KCk7CgogICAgICAgIGlmIChjdHguc2VuZGVyICE9IHNlbGYubWFzdGVyKSB7CiAgICAgICAgICAgIGxldCBzaW5pdDogU3RhdGVJbml0ID0gaW5pdE9mIEpldHRvbkRlZmF1bHRXYWxsZXQoc2VsZi5tYXN0ZXIsIG1zZy5mcm9tKTsKICAgICAgICAgICAgcmVxdWlyZShjb250cmFjdEFkZHJlc3Moc2luaXQpID09IGN0eC5zZW5kZXIsICJJbnZhbGlkIHNlbmRlciEiKTsKICAgICAgICB9CgogICAgICAgIC8vIFVwZGF0ZSBiYWxhbmNlCiAgICAgICAgc2VsZi5iYWxhbmNlID0gc2VsZi5iYWxhbmNlICsgbXNnLmFtb3VudDsKICAgICAgICByZXF1aXJlKHNlbGYuYmFsYW5jZSA+PSAwLCAiSW52YWxpZCBiYWxhbmNlIik7IAogICAgICAgIAogICAgICAgIC8vIEdldCB2YWx1ZSBmb3IgZ2FzCiAgICAgICAgbGV0IG1zZ192YWx1ZTogSW50ID0gc2VsZi5tc2dfdmFsdWUoY3R4LnZhbHVlKTsgIAogICAgICAgIGxldCBmd2RfZmVlOiBJbnQgPSBjdHgucmVhZEZvcndhcmRGZWUoKTsKICAgICAgICBtc2dfdmFsdWUgPSBtc2dfdmFsdWUgLSBtc2cuZm9yd2FyZF90b25fYW1vdW50IC0gZndkX2ZlZTsKICAgICAgICAKICAgICAgICAgLy8gMHg3MzYyZDA5YyAtIG5vdGlmeSB0aGUgbmV3IG93bmVyIG9mIEpldHRvblRva2VuIHRoYXQgdGhlIHRyYW5zZmVyIGlzIGNvbXBsZXRlCiAgICAgICAgaWYgKG1zZy5mb3J3YXJkX3Rvbl9hbW91bnQgPiAwKSB7IAogICAgICAgICAgICBzZW5kKFNlbmRQYXJhbWV0ZXJzewogICAgICAgICAgICAgICAgdG86IHNlbGYub3duZXIsCiAgICAgICAgICAgICAgICB2YWx1ZTogbXNnLmZvcndhcmRfdG9uX2Ftb3VudCwKICAgICAgICAgICAgICAgIG1vZGU6IFNlbmRQYXlHYXNTZXBhcmF0ZWx5ICsgU2VuZElnbm9yZUVycm9ycywKICAgICAgICAgICAgICAgIGJvdW5jZTogZmFsc2UsCiAgICAgICAgICAgICAgICBib2R5OiBUb2tlbk5vdGlmaWNhdGlvbiB7CiAgICAgICAgICAgICAgICAgICAgcXVlcnlfaWQ6IG1zZy5xdWVyeV9pZCwKICAgICAgICAgICAgICAgICAgICBhbW91bnQ6IG1zZy5hbW91bnQsCiAgICAgICAgICAgICAgICAgICAgZnJvbTogbXNnLmZyb20sCiAgICAgICAgICAgICAgICAgICAgZm9yd2FyZF9wYXlsb2FkOiBtc2cuZm9yd2FyZF9wYXlsb2FkCiAgICAgICAgICAgICAgICB9LnRvQ2VsbCgpCiAgICAgICAgICAgIH0pOwogICAgICAgIH0KCiAgICAgICAgLy8gMHhkNTMyNzZkYiAtLSBDYXNoYmFjayB0byB0aGUgb3JpZ2luYWwgU2VuZGVyCiAgICAgICAgaWYgKG1zZy5yZXNwb25zZV9kZXN0aW5hdGlvbiAhPSBudWxsKSB7IAogICAgICAgICAgICBzZW5kKFNlbmRQYXJhbWV0ZXJzIHsKICAgICAgICAgICAgICAgIHRvOiBtc2cucmVzcG9uc2VfZGVzdGluYXRpb24sIAogICAgICAgICAgICAgICAgdmFsdWU6IG1zZ192YWx1ZSwgIAogICAgICAgICAgICAgICAgYm91bmNlOiBmYWxzZSwKICAgICAgICAgICAgICAgIGJvZHk6IFRva2VuRXhjZXNzZXMgeyAKICAgICAgICAgICAgICAgICAgICBxdWVyeV9pZDogbXNnLnF1ZXJ5X2lkCiAgICAgICAgICAgICAgICB9LnRvQ2VsbCgpLAogICAgICAgICAgICAgICAgbW9kZTogU2VuZElnbm9yZUVycm9ycwogICAgICAgICAgICB9KTsKICAgICAgICB9CiAgICB9CgogICAgcmVjZWl2ZShtc2c6IFRva2VuQnVybikgewogICAgICAgIGxldCBjdHg6IENvbnRleHQgPSBjb250ZXh0KCk7CiAgICAgICAgcmVxdWlyZShjdHguc2VuZGVyID09IHNlbGYub3duZXIsICJJbnZhbGlkIHNlbmRlciIpOyAgLy8gQ2hlY2sgc2VuZGVyCgogICAgICAgIHNlbGYuYmFsYW5jZSA9IHNlbGYuYmFsYW5jZSAtIG1zZy5hbW91bnQ7IC8vIFVwZGF0ZSBiYWxhbmNlCiAgICAgICAgcmVxdWlyZShzZWxmLmJhbGFuY2UgPj0gMCwgIkludmFsaWQgYmFsYW5jZSIpOwoKICAgICAgICBsZXQgZndkX2ZlZTogSW50ID0gY3R4LnJlYWRGb3J3YXJkRmVlKCk7IC8vIEdhcyBjaGVja3MKICAgICAgICByZXF1aXJlKGN0eC52YWx1ZSA+IGZ3ZF9mZWUgKyAyICogc2VsZi5nYXNDb25zdW1wdGlvbiArIHNlbGYubWluVG9uc0ZvclN0b3JhZ2UsICJJbnZhbGlkIHZhbHVlIC0gQnVybiIpOwoKICAgICAgICAvLyBCdXJuIHRva2VucwogICAgICAgIHNlbmQoU2VuZFBhcmFtZXRlcnN7ICAKICAgICAgICAgICAgdG86IHNlbGYubWFzdGVyLAogICAgICAgICAgICB2YWx1ZTogMCwKICAgICAgICAgICAgbW9kZTogU2VuZFJlbWFpbmluZ1ZhbHVlLAogICAgICAgICAgICBib3VuY2U6IHRydWUsCiAgICAgICAgICAgIGJvZHk6IFRva2VuQnVybk5vdGlmaWNhdGlvbnsKICAgICAgICAgICAgICAgIHF1ZXJ5X2lkOiBtc2cucXVlcnlfaWQsCiAgICAgICAgICAgICAgICBhbW91bnQ6IG1zZy5hbW91bnQsCiAgICAgICAgICAgICAgICByZXNwb25zZV9kZXN0aW5hdGlvbjogc2VsZi5vd25lcgogICAgICAgICAgICB9LnRvQ2VsbCgpCiAgICAgICAgfSk7CiAgICB9CgogICAgcmVjZWl2ZShtc2c6IFByb3ZpZGVXYWxsZXRBZGRyZXNzKSB7CiAgICAgICAgcmVxdWlyZShjb250ZXh0KCkudmFsdWUgPj0gdG9uKCIwLjAwNjEiKSwgIkluc3VmZmljaWVudCBnYXMiKTsKICAgICAgICBsZXQgaW5pdDogU3RhdGVJbml0ID0gaW5pdE9mIEpldHRvbkRlZmF1bHRXYWxsZXQoc2VsZi5tYXN0ZXIsIG1zZy5vd25lcl9hZGRyZXNzKTsKICAgICAgICBsZXQgd2FsbGV0X2FkZHJlc3M6IEFkZHJlc3MgPSBjb250cmFjdEFkZHJlc3MoaW5pdCk7CgogICAgICAgIGxldCByZXNwb25zZV9ib2R5OiBUYWtlV2FsbGV0QWRkcmVzcyA9IFRha2VXYWxsZXRBZGRyZXNzewogICAgICAgICAgICAgICAgcXVlcnlfaWQ6IG1zZy5xdWVyeV9pZCwKICAgICAgICAgICAgICAgIHdhbGxldF9hZGRyZXNzOiB3YWxsZXRfYWRkcmVzcywKICAgICAgICAgICAgICAgIG93bmVyX2FkZHJlc3M6IG51bGwKICAgICAgICAgICAgfTsKICAgICAgICBpZiAobXNnLmluY2x1ZGVfYWRkcmVzcykgewogICAgICAgICAgICByZXNwb25zZV9ib2R5Lm93bmVyX2FkZHJlc3MgPSBtc2cub3duZXJfYWRkcmVzczsKICAgICAgICB9CiAgICAgICAgc2VuZChTZW5kUGFyYW1ldGVyc3sKICAgICAgICAgICAgdG86IHNlbmRlcigpLAogICAgICAgICAgICB2YWx1ZTogMCwKICAgICAgICAgICAgbW9kZTogU2VuZFJlbWFpbmluZ1ZhbHVlLAogICAgICAgICAgICBib3VuY2U6IHRydWUsCiAgICAgICAgICAgIGJvZHk6IHJlc3BvbnNlX2JvZHkudG9DZWxsKCkKICAgICAgICB9KTsKICAgIH0KCiAgICBnZXQgZnVuIG1zZ192YWx1ZSh2YWx1ZTogSW50KTogSW50IHsKICAgICAgICBsZXQgbXNnX3ZhbHVlOiBJbnQgPSB2YWx1ZTsKICAgICAgICBsZXQgdG9uX2JhbGFuY2VfYmVmb3JlX21zZzogSW50ID0gbXlCYWxhbmNlKCkgLSBtc2dfdmFsdWU7CiAgICAgICAgbGV0IHN0b3JhZ2VfZmVlOiBJbnQgPSBzZWxmLm1pblRvbnNGb3JTdG9yYWdlIC0gbWluKHRvbl9iYWxhbmNlX2JlZm9yZV9tc2csIHNlbGYubWluVG9uc0ZvclN0b3JhZ2UpOwogICAgICAgIG1zZ192YWx1ZSA9IG1zZ192YWx1ZSAtIChzdG9yYWdlX2ZlZSArIHNlbGYuZ2FzQ29uc3VtcHRpb24pOwogICAgICAgIHJldHVybiBtc2dfdmFsdWU7CiAgICB9CgogICAgYm91bmNlZChzcmM6IGJvdW5jZWQ8VG9rZW5UcmFuc2ZlckludGVybmFsPikgewogICAgICAgIHNlbGYuYmFsYW5jZSA9IHNlbGYuYmFsYW5jZSArIHNyYy5hbW91bnQ7CiAgICB9CgogICAgYm91bmNlZChzcmM6IGJvdW5jZWQ8VG9rZW5CdXJuTm90aWZpY2F0aW9uPikgewogICAgICAgIHNlbGYuYmFsYW5jZSA9IHNlbGYuYmFsYW5jZSArIHNyYy5hbW91bnQ7CiAgICB9CgogICAgZ2V0IGZ1biBnZXRfd2FsbGV0X2RhdGEoKTogSmV0dG9uV2FsbGV0RGF0YSB7CiAgICAgICAgcmV0dXJuIEpldHRvbldhbGxldERhdGF7CiAgICAgICAgICAgIGJhbGFuY2U6IHNlbGYuYmFsYW5jZSwKICAgICAgICAgICAgb3duZXI6IHNlbGYub3duZXIsCiAgICAgICAgICAgIG1hc3Rlcjogc2VsZi5tYXN0ZXIsCiAgICAgICAgICAgIHdhbGxldF9jb2RlOiAoaW5pdE9mIEpldHRvbkRlZmF1bHRXYWxsZXQoc2VsZi5tYXN0ZXIsIHNlbGYub3duZXIpKS5jb2RlCiAgICAgICAgfTsKICAgIH0KICAgIAogICAgLy8gYm91bmNlZChtc2c6IFNsaWNlKSB7CiAgICAvLyAgICAgLy8gUGFyc2UgYm91bmNlZCBtZXNzYWdlCiAgICAvLyAgICAgbXNnLnNraXBCaXRzKDMyKTsgLy8gMHhGRkZGRkZGRiAKICAgIC8vICAgICBsZXQgb3A6IEludCA9IG1zZy5sb2FkVWludCgzMik7CiAgICAvLyAgICAgbGV0IHF1ZXJ5X2lkOiBJbnQgPSBtc2cubG9hZFVpbnQoNjQpOwogICAgLy8gICAgIGxldCBqZXR0b25BbW91bnQ6IEludCA9IG1zZy5sb2FkQ29pbnMoKTsKICAgIC8vICAgICByZXF1aXJlKG9wID09IDB4MTc4ZDQ1MTkgfHwgb3AgPT0gMHg3YmRkOTdkZSwgIkludmFsaWQgYm91bmNlZCBtZXNzYWdlIik7CiAgICAvLyAgICAgc2VsZi5iYWxhbmNlID0gc2VsZi5iYWxhbmNlICsgamV0dG9uQW1vdW50OyAvLyBVcGRhdGUgYmFsYW5jZQogICAgLy8gfQoKfQo=","sources/messages.tact":"c3RydWN0IEpldHRvbkRhdGEgewogICAgdG90YWxfc3VwcGx5OiBJbnQ7CiAgICBtaW50YWJsZTogQm9vbDsKICAgIG93bmVyOiBBZGRyZXNzOwogICAgY29udGVudDogQ2VsbDsKICAgIHdhbGxldF9jb2RlOiBDZWxsOwp9CgpzdHJ1Y3QgSmV0dG9uV2FsbGV0RGF0YSB7CiAgICBiYWxhbmNlOiBJbnQ7CiAgICBvd25lcjogQWRkcmVzczsKICAgIG1hc3RlcjogQWRkcmVzczsKICAgIHdhbGxldF9jb2RlOiBDZWxsOwp9CgptZXNzYWdlKDB4ZjhhN2VhNSkgVG9rZW5UcmFuc2ZlciB7CiAgICBxdWVyeV9pZDogSW50IGFzIHVpbnQ2NDsKICAgIGFtb3VudDogSW50IGFzIGNvaW5zOwogICAgZGVzdGluYXRpb246IEFkZHJlc3M7CiAgICByZXNwb25zZV9kZXN0aW5hdGlvbjogQWRkcmVzczsKICAgIGN1c3RvbV9wYXlsb2FkOiBDZWxsPzsKICAgIGZvcndhcmRfdG9uX2Ftb3VudDogSW50IGFzIGNvaW5zOwogICAgZm9yd2FyZF9wYXlsb2FkOiBTbGljZSBhcyByZW1haW5pbmc7IC8vIENvbW1lbnQgVGV4dCBtZXNzYWdlIHdoZW4gVHJhbnNmZXIgdGhlIGpldHRvbgp9CgptZXNzYWdlKDB4MTc4ZDQ1MTkpIFRva2VuVHJhbnNmZXJJbnRlcm5hbCB7CiAgICBxdWVyeV9pZDogSW50IGFzIHVpbnQ2NDsKICAgIGFtb3VudDogSW50IGFzIGNvaW5zOwogICAgZnJvbTogQWRkcmVzczsKICAgIHJlc3BvbnNlX2Rlc3RpbmF0aW9uOiBBZGRyZXNzOwogICAgZm9yd2FyZF90b25fYW1vdW50OiBJbnQgYXMgY29pbnM7CiAgICBmb3J3YXJkX3BheWxvYWQ6IFNsaWNlIGFzIHJlbWFpbmluZzsgLy8gQ29tbWVudCBUZXh0IG1lc3NhZ2Ugd2hlbiBUcmFuc2ZlciB0aGUgamV0dG9uCn0KCm1lc3NhZ2UoMHg3MzYyZDA5YykgVG9rZW5Ob3RpZmljYXRpb24gewogICAgcXVlcnlfaWQ6IEludCBhcyB1aW50NjQ7CiAgICBhbW91bnQ6IEludCBhcyBjb2luczsKICAgIGZyb206IEFkZHJlc3M7CiAgICBmb3J3YXJkX3BheWxvYWQ6IFNsaWNlIGFzIHJlbWFpbmluZzsgLy8gQ29tbWVudCBUZXh0IG1lc3NhZ2Ugd2hlbiBUcmFuc2ZlciB0aGUgamV0dG9uIAp9CgptZXNzYWdlKDB4NTk1ZjA3YmMpIFRva2VuQnVybiB7CiAgICBxdWVyeV9pZDogSW50IGFzIHVpbnQ2NDsKICAgIGFtb3VudDogSW50IGFzIGNvaW5zOwogICAgcmVzcG9uc2VfZGVzdGluYXRpb246IEFkZHJlc3M7CiAgICBjdXN0b21fcGF5bG9hZDogQ2VsbD87Cn0KCm1lc3NhZ2UoMHg3YmRkOTdkZSkgVG9rZW5CdXJuTm90aWZpY2F0aW9uIHsKICAgIHF1ZXJ5X2lkOiBJbnQgYXMgdWludDY0OwogICAgYW1vdW50OiBJbnQgYXMgY29pbnM7CiAgICByZXNwb25zZV9kZXN0aW5hdGlvbjogQWRkcmVzczsKfQoKbWVzc2FnZSgweGQ1MzI3NmRiKSBUb2tlbkV4Y2Vzc2VzIHsKICAgIHF1ZXJ5X2lkOiBJbnQgYXMgdWludDY0Owp9CgptZXNzYWdlIFRva2VuVXBkYXRlQ29udGVudCB7CiAgICBjb250ZW50OiBDZWxsOwp9CgovLyA9PT09IFRFUDg5OiBKZXR0b24gV2FsbGV0IERpc2NvdmVyeSA9PT09Cm1lc3NhZ2UoMHgyYzc2Yjk3MykgUHJvdmlkZVdhbGxldEFkZHJlc3MgewogICAgcXVlcnlfaWQ6IEludCBhcyB1aW50NjQ7CiAgICBvd25lcl9hZGRyZXNzOiBBZGRyZXNzOwogICAgaW5jbHVkZV9hZGRyZXNzOiBCb29sOwp9CgptZXNzYWdlKDB4ZDE3MzU0MDApIFRha2VXYWxsZXRBZGRyZXNzIHsKICAgIHF1ZXJ5X2lkOiBJbnQgYXMgdWludDY0OwogICAgd2FsbGV0X2FkZHJlc3M6IEFkZHJlc3M7CiAgICBvd25lcl9hZGRyZXNzOiBBZGRyZXNzPzsKfQo=","sources/contract.tact":"aW1wb3J0ICIuL2pldHRvbiI7CgptZXNzYWdlIE1pbnQgewogICAgYW1vdW50OiBJbnQ7CiAgICByZWNlaXZlcjogQWRkcmVzczsKfQoKY29udHJhY3QgU2FtcGxlSmV0dG9uIHdpdGggSmV0dG9uIHsKICAgIHRvdGFsX3N1cHBseTogSW50IGFzIGNvaW5zOwogICAgb3duZXI6IEFkZHJlc3M7CiAgICBjb250ZW50OiBDZWxsOwogICAgbWludGFibGU6IEJvb2w7CgogICAgbWF4X3N1cHBseTogSW50IGFzIGNvaW5zOyAvLyBFeHRyYWN0IHBhcmFtZXRlciB3ZSBzZXQgaGVyZS4gVGhlIEpldHRvbiBTdGFuZGFyZHMgZG9lc24ndCBoYXZlIHRoaXMgcGFyYW1ldGVyLgoKICAgIGluaXQob3duZXI6IEFkZHJlc3MsIGNvbnRlbnQ6IENlbGwsIG1heF9zdXBwbHk6IEludCkgewogICAgICAgIHNlbGYudG90YWxfc3VwcGx5ID0gMDsKICAgICAgICBzZWxmLm93bmVyID0gb3duZXI7CiAgICAgICAgc2VsZi5taW50YWJsZSA9IHRydWU7CiAgICAgICAgc2VsZi5jb250ZW50ID0gY29udGVudDsKICAgICAgICBzZWxmLm1heF9zdXBwbHkgPSBtYXhfc3VwcGx5OwogICAgfQoKICAgIHJlY2VpdmUobXNnOiBNaW50KSB7CiAgICAgICAgbGV0IGN0eDogQ29udGV4dCA9IGNvbnRleHQoKTsKICAgICAgICByZXF1aXJlKGN0eC5zZW5kZXIgPT0gc2VsZi5vd25lciwgIk5vdCBvd25lciIpOwogICAgICAgIHJlcXVpcmUoc2VsZi5taW50YWJsZSwgIk5vdCBtaW50YWJsZSIpOwogICAgICAgIHJlcXVpcmUoc2VsZi50b3RhbF9zdXBwbHkgKyBtc2cuYW1vdW50IDw9IHNlbGYubWF4X3N1cHBseSwgIk1heCBzdXBwbHkgZXhjZWVkZWQiKTsKICAgICAgICBzZWxmLm1pbnQobXNnLnJlY2VpdmVyLCBtc2cuYW1vdW50LCBzZWxmLm93bmVyKTsgLy8gKHRvLCBhbW91bnQsIHJlc3BvbnNlX2Rlc3RpbmF0aW9uKQogICAgfQoKICAgIHJlY2VpdmUoIk1pbnQ6IDEwMCIpIHsgLy8gUHVibGljIE1pbnRpbmcKICAgICAgICBsZXQgY3R4OiBDb250ZXh0ID0gY29udGV4dCgpOwogICAgICAgIHJlcXVpcmUoc2VsZi5taW50YWJsZSwgIk5vdCBtaW50YWJsZSIpOwogICAgICAgIHJlcXVpcmUoc2VsZi50b3RhbF9zdXBwbHkgKyAxMDAgPD0gc2VsZi5tYXhfc3VwcGx5LCAiTWF4IHN1cHBseSBleGNlZWRlZCIpOwogICAgICAgIHNlbGYubWludChjdHguc2VuZGVyLCAxMDAsIHNlbGYub3duZXIpOyAvLyDwn5S0IAogICAgfQoKICAgIHJlY2VpdmUoIk93bmVyOiBNaW50Q2xvc2UiKSB7CiAgICAgICAgbGV0IGN0eDogQ29udGV4dCA9IGNvbnRleHQoKTsKICAgICAgICByZXF1aXJlKGN0eC5zZW5kZXIgPT0gc2VsZi5vd25lciwgIk5vdCBvd25lciIpOwogICAgICAgIHNlbGYubWludGFibGUgPSBmYWxzZTsKICAgIH0KfSA="},"compiler":{"name":"tact","version":"1.1.4","parameters":"{\"entrypoint\":\"./sources/contract.tact\",\"options\":{}}"}} \ No newline at end of file diff --git a/sources/output/SampleJetton_SampleJetton.storage.fc b/sources/output/SampleJetton_SampleJetton.storage.fc index 1a5525a..4c3cb31 100644 --- a/sources/output/SampleJetton_SampleJetton.storage.fc +++ b/sources/output/SampleJetton_SampleJetton.storage.fc @@ -23,28 +23,28 @@ _ $StateInit$_get_code((cell, cell) v) inline { ;; ;; Type: JettonData -;; TLB: _ totalSupply:int257 mintable:bool owner:address content:^cell walletCode:^cell = JettonData +;; TLB: _ total_supply:int257 mintable:bool owner:address content:^cell wallet_code:^cell = JettonData ;; (int, int, slice, cell, cell) $JettonData$_to_external(((int, int, slice, cell, cell)) v) inline { - var (v'totalSupply, v'mintable, v'owner, v'content, v'walletCode) = v; - return (v'totalSupply, v'mintable, v'owner, v'content, v'walletCode); + var (v'total_supply, v'mintable, v'owner, v'content, v'wallet_code) = v; + return (v'total_supply, v'mintable, v'owner, v'content, v'wallet_code); } -((int, int, slice, cell, cell)) $JettonData$_constructor_totalSupply_mintable_owner_content_walletCode(int totalSupply, int mintable, slice owner, cell content, cell walletCode) inline { - return (totalSupply, mintable, owner, content, walletCode); +((int, int, slice, cell, cell)) $JettonData$_constructor_total_supply_mintable_owner_content_wallet_code(int total_supply, int mintable, slice owner, cell content, cell wallet_code) inline { + return (total_supply, mintable, owner, content, wallet_code); } ;; ;; Type: TokenTransferInternal ;; Header: 0x178d4519 -;; TLB: token_transfer_internal#178d4519 queryId:uint64 amount:coins from:address response_destination:address forward_ton_amount:coins forward_payload:remainder = TokenTransferInternal +;; TLB: token_transfer_internal#178d4519 query_id:uint64 amount:coins from:address response_destination:address forward_ton_amount:coins forward_payload:remainder = TokenTransferInternal ;; builder $TokenTransferInternal$_store(builder build_0, (int, int, slice, slice, int, slice) v) inline_ref { - var (v'queryId, v'amount, v'from, v'response_destination, v'forward_ton_amount, v'forward_payload) = v; + var (v'query_id, v'amount, v'from, v'response_destination, v'forward_ton_amount, v'forward_payload) = v; build_0 = store_uint(build_0, 395134233, 32); - build_0 = build_0.store_uint(v'queryId, 64); + build_0 = build_0.store_uint(v'query_id, 64); build_0 = build_0.store_coins(v'amount); build_0 = __tact_store_address(build_0, v'from); build_0 = __tact_store_address(build_0, v'response_destination); @@ -57,34 +57,34 @@ cell $TokenTransferInternal$_store_cell((int, int, slice, slice, int, slice) v) return $TokenTransferInternal$_store(begin_cell(), v).end_cell(); } -((int, int, slice, slice, int, slice)) $TokenTransferInternal$_constructor_queryId_amount_from_response_destination_forward_ton_amount_forward_payload(int queryId, int amount, slice from, slice response_destination, int forward_ton_amount, slice forward_payload) inline { - return (queryId, amount, from, response_destination, forward_ton_amount, forward_payload); +((int, int, slice, slice, int, slice)) $TokenTransferInternal$_constructor_query_id_amount_from_response_destination_forward_ton_amount_forward_payload(int query_id, int amount, slice from, slice response_destination, int forward_ton_amount, slice forward_payload) inline { + return (query_id, amount, from, response_destination, forward_ton_amount, forward_payload); } ;; ;; Type: TokenBurnNotification ;; Header: 0x7bdd97de -;; TLB: token_burn_notification#7bdd97de queryId:uint64 amount:coins response_destination:address = TokenBurnNotification +;; TLB: token_burn_notification#7bdd97de query_id:uint64 amount:coins response_destination:address = TokenBurnNotification ;; (slice, ((int, int, slice))) $TokenBurnNotification$_load(slice sc_0) inline { throw_unless(129, sc_0~load_uint(32) == 2078119902); - var v'queryId = sc_0~load_uint(64); + var v'query_id = sc_0~load_uint(64); var v'amount = sc_0~load_coins(); var v'response_destination = sc_0~__tact_load_address(); - return (sc_0, (v'queryId, v'amount, v'response_destination)); + return (sc_0, (v'query_id, v'amount, v'response_destination)); } ;; ;; Type: TokenExcesses ;; Header: 0xd53276db -;; TLB: token_excesses#d53276db queryId:uint64 = TokenExcesses +;; TLB: token_excesses#d53276db query_id:uint64 = TokenExcesses ;; builder $TokenExcesses$_store(builder build_0, (int) v) inline { - var (v'queryId) = v; + var (v'query_id) = v; build_0 = store_uint(build_0, 3576854235, 32); - build_0 = build_0.store_uint(v'queryId, 64); + build_0 = build_0.store_uint(v'query_id, 64); return build_0; } @@ -92,8 +92,8 @@ cell $TokenExcesses$_store_cell((int) v) inline { return $TokenExcesses$_store(begin_cell(), v).end_cell(); } -((int)) $TokenExcesses$_constructor_queryId(int queryId) inline { - return (queryId); +((int)) $TokenExcesses$_constructor_query_id(int query_id) inline { + return (query_id); } ;; @@ -121,34 +121,62 @@ cell $TokenExcesses$_store_cell((int) v) inline { return (sc_0, (v'amount, v'receiver)); } +;; +;; Type: JettonDefaultWallet +;; + +builder $JettonDefaultWallet$init$_store(builder build_0, (slice, slice) v) inline { + var (v'master, v'owner) = v; + build_0 = __tact_store_address(build_0, v'master); + build_0 = __tact_store_address(build_0, v'owner); + return build_0; +} + +(cell, cell) $JettonDefaultWallet$_init_child(cell sys', slice $master, slice $owner) inline_ref { + slice sc' = sys'.begin_parse(); + cell source = sc'~load_dict(); + cell contracts = new_dict(); + + ;; Contract Code: JettonDefaultWallet + cell mine = __tact_dict_get_code(source, 55471); + contracts = __tact_dict_set_code(contracts, 55471, mine); + + ;; Build cell + builder b = begin_cell(); + b = b.store_ref(begin_cell().store_dict(contracts).end_cell()); + b = b.store_int(false, 1); + b = $JettonDefaultWallet$init$_store(b, ($master, $owner)); + return (mine, b.end_cell()); +} + ;; ;; Type: SampleJetton ;; builder $SampleJetton$_store(builder build_0, (int, slice, cell, int, int) v) inline { - var (v'totalSupply, v'owner, v'content, v'mintable, v'maxSupply) = v; - build_0 = build_0.store_coins(v'totalSupply); + var (v'total_supply, v'owner, v'content, v'mintable, v'max_supply) = v; + build_0 = build_0.store_coins(v'total_supply); build_0 = __tact_store_address(build_0, v'owner); build_0 = build_0.store_ref(v'content); build_0 = build_0.store_int(v'mintable, 1); - build_0 = build_0.store_coins(v'maxSupply); + build_0 = build_0.store_coins(v'max_supply); return build_0; } (slice, ((int, slice, cell, int, int))) $SampleJetton$_load(slice sc_0) inline { - var v'totalSupply = sc_0~load_coins(); + var v'total_supply = sc_0~load_coins(); var v'owner = sc_0~__tact_load_address(); var v'content = sc_0~load_ref(); var v'mintable = sc_0~load_int(1); - var v'maxSupply = sc_0~load_coins(); - return (sc_0, (v'totalSupply, v'owner, v'content, v'mintable, v'maxSupply)); + var v'max_supply = sc_0~load_coins(); + return (sc_0, (v'total_supply, v'owner, v'content, v'mintable, v'max_supply)); } (slice, ((slice, cell, int))) $SampleJetton$init$_load(slice sc_0) inline { var v'owner = sc_0~__tact_load_address(); var v'content = sc_0~load_ref(); - var v'maxSupply = sc_0~load_int(257); - return (sc_0, (v'owner, v'content, v'maxSupply)); + var v'max_supply = sc_0~load_int(257); + return (sc_0, (v'owner, v'content, v'max_supply)); } (int, slice, cell, int, int) $SampleJetton$_contract_load() impure inline_ref { @@ -160,9 +188,9 @@ builder $SampleJetton$_store(builder build_0, (int, slice, cell, int, int) v) in } else { ;; Allow only workchain deployments throw_unless(137, my_address().preload_uint(11) == 1024); - (slice owner, cell content, int maxSupply) = $sc~$SampleJetton$init$_load(); + (slice owner, cell content, int max_supply) = $sc~$SampleJetton$init$_load(); $sc.end_parse(); - return $SampleJetton$_contract_init(owner, content, maxSupply); + return $SampleJetton$_contract_init(owner, content, max_supply); } } @@ -172,32 +200,4 @@ builder $SampleJetton$_store(builder build_0, (int, slice, cell, int, int) v) in b = b.store_int(true, 1); b = $SampleJetton$_store(b, v); set_data(b.end_cell()); -} - -;; -;; Type: JettonDefaultWallet -;; - -builder $JettonDefaultWallet$init$_store(builder build_0, (slice, slice) v) inline { - var (v'master, v'owner) = v; - build_0 = __tact_store_address(build_0, v'master); - build_0 = __tact_store_address(build_0, v'owner); - return build_0; -} - -(cell, cell) $JettonDefaultWallet$_init_child(cell sys', slice $master, slice $owner) inline_ref { - slice sc' = sys'.begin_parse(); - cell source = sc'~load_dict(); - cell contracts = new_dict(); - - ;; Contract Code: JettonDefaultWallet - cell mine = __tact_dict_get_code(source, 55471); - contracts = __tact_dict_set_code(contracts, 55471, mine); - - ;; Build cell - builder b = begin_cell(); - b = b.store_ref(begin_cell().store_dict(contracts).end_cell()); - b = b.store_int(false, 1); - b = $JettonDefaultWallet$init$_store(b, ($master, $owner)); - return (mine, b.end_cell()); } \ No newline at end of file diff --git a/sources/output/SampleJetton_SampleJetton.ts b/sources/output/SampleJetton_SampleJetton.ts index e8fc9c2..5ba5a7c 100644 --- a/sources/output/SampleJetton_SampleJetton.ts +++ b/sources/output/SampleJetton_SampleJetton.ts @@ -13,6 +13,9 @@ import { Sender, Contract, ContractABI, + ABIType, + ABIGetter, + ABIReceiver, TupleBuilder, DictionaryValue } from 'ton-core'; @@ -283,50 +286,50 @@ function dictValueParserChangeOwnerOk(): DictionaryValue { export type JettonData = { $$type: 'JettonData'; - totalSupply: bigint; + total_supply: bigint; mintable: boolean; owner: Address; content: Cell; - walletCode: Cell; + wallet_code: Cell; } export function storeJettonData(src: JettonData) { return (builder: Builder) => { let b_0 = builder; - b_0.storeInt(src.totalSupply, 257); + b_0.storeInt(src.total_supply, 257); b_0.storeBit(src.mintable); b_0.storeAddress(src.owner); b_0.storeRef(src.content); - b_0.storeRef(src.walletCode); + b_0.storeRef(src.wallet_code); }; } export function loadJettonData(slice: Slice) { let sc_0 = slice; - let _totalSupply = sc_0.loadIntBig(257); + let _total_supply = sc_0.loadIntBig(257); let _mintable = sc_0.loadBit(); let _owner = sc_0.loadAddress(); let _content = sc_0.loadRef(); - let _walletCode = sc_0.loadRef(); - return { $$type: 'JettonData' as const, totalSupply: _totalSupply, mintable: _mintable, owner: _owner, content: _content, walletCode: _walletCode }; + let _wallet_code = sc_0.loadRef(); + return { $$type: 'JettonData' as const, total_supply: _total_supply, mintable: _mintable, owner: _owner, content: _content, wallet_code: _wallet_code }; } function loadTupleJettonData(source: TupleReader) { - let _totalSupply = source.readBigNumber(); + let _total_supply = source.readBigNumber(); let _mintable = source.readBoolean(); let _owner = source.readAddress(); let _content = source.readCell(); - let _walletCode = source.readCell(); - return { $$type: 'JettonData' as const, totalSupply: _totalSupply, mintable: _mintable, owner: _owner, content: _content, walletCode: _walletCode }; + let _wallet_code = source.readCell(); + return { $$type: 'JettonData' as const, total_supply: _total_supply, mintable: _mintable, owner: _owner, content: _content, wallet_code: _wallet_code }; } function storeTupleJettonData(source: JettonData) { let builder = new TupleBuilder(); - builder.writeNumber(source.totalSupply); + builder.writeNumber(source.total_supply); builder.writeBoolean(source.mintable); builder.writeAddress(source.owner); builder.writeCell(source.content); - builder.writeCell(source.walletCode); + builder.writeCell(source.wallet_code); return builder.build(); } @@ -346,7 +349,7 @@ export type JettonWalletData = { balance: bigint; owner: Address; master: Address; - walletCode: Cell; + wallet_code: Cell; } export function storeJettonWalletData(src: JettonWalletData) { @@ -355,7 +358,7 @@ export function storeJettonWalletData(src: JettonWalletData) { b_0.storeInt(src.balance, 257); b_0.storeAddress(src.owner); b_0.storeAddress(src.master); - b_0.storeRef(src.walletCode); + b_0.storeRef(src.wallet_code); }; } @@ -364,16 +367,16 @@ export function loadJettonWalletData(slice: Slice) { let _balance = sc_0.loadIntBig(257); let _owner = sc_0.loadAddress(); let _master = sc_0.loadAddress(); - let _walletCode = sc_0.loadRef(); - return { $$type: 'JettonWalletData' as const, balance: _balance, owner: _owner, master: _master, walletCode: _walletCode }; + let _wallet_code = sc_0.loadRef(); + return { $$type: 'JettonWalletData' as const, balance: _balance, owner: _owner, master: _master, wallet_code: _wallet_code }; } function loadTupleJettonWalletData(source: TupleReader) { let _balance = source.readBigNumber(); let _owner = source.readAddress(); let _master = source.readAddress(); - let _walletCode = source.readCell(); - return { $$type: 'JettonWalletData' as const, balance: _balance, owner: _owner, master: _master, walletCode: _walletCode }; + let _wallet_code = source.readCell(); + return { $$type: 'JettonWalletData' as const, balance: _balance, owner: _owner, master: _master, wallet_code: _wallet_code }; } function storeTupleJettonWalletData(source: JettonWalletData) { @@ -381,7 +384,7 @@ function storeTupleJettonWalletData(source: JettonWalletData) { builder.writeNumber(source.balance); builder.writeAddress(source.owner); builder.writeAddress(source.master); - builder.writeCell(source.walletCode); + builder.writeCell(source.wallet_code); return builder.build(); } @@ -398,7 +401,7 @@ function dictValueParserJettonWalletData(): DictionaryValue { export type TokenTransfer = { $$type: 'TokenTransfer'; - queryId: bigint; + query_id: bigint; amount: bigint; destination: Address; response_destination: Address; @@ -411,7 +414,7 @@ export function storeTokenTransfer(src: TokenTransfer) { return (builder: Builder) => { let b_0 = builder; b_0.storeUint(260734629, 32); - b_0.storeUint(src.queryId, 64); + b_0.storeUint(src.query_id, 64); b_0.storeCoins(src.amount); b_0.storeAddress(src.destination); b_0.storeAddress(src.response_destination); @@ -424,30 +427,30 @@ export function storeTokenTransfer(src: TokenTransfer) { export function loadTokenTransfer(slice: Slice) { let sc_0 = slice; if (sc_0.loadUint(32) !== 260734629) { throw Error('Invalid prefix'); } - let _queryId = sc_0.loadUintBig(64); + let _query_id = sc_0.loadUintBig(64); let _amount = sc_0.loadCoins(); let _destination = sc_0.loadAddress(); let _response_destination = sc_0.loadAddress(); let _custom_payload = sc_0.loadBit() ? sc_0.loadRef() : null; let _forward_ton_amount = sc_0.loadCoins(); let _forward_payload = sc_0.asCell(); - return { $$type: 'TokenTransfer' as const, queryId: _queryId, amount: _amount, destination: _destination, response_destination: _response_destination, custom_payload: _custom_payload, forward_ton_amount: _forward_ton_amount, forward_payload: _forward_payload }; + return { $$type: 'TokenTransfer' as const, query_id: _query_id, amount: _amount, destination: _destination, response_destination: _response_destination, custom_payload: _custom_payload, forward_ton_amount: _forward_ton_amount, forward_payload: _forward_payload }; } function loadTupleTokenTransfer(source: TupleReader) { - let _queryId = source.readBigNumber(); + let _query_id = source.readBigNumber(); let _amount = source.readBigNumber(); let _destination = source.readAddress(); let _response_destination = source.readAddress(); let _custom_payload = source.readCellOpt(); let _forward_ton_amount = source.readBigNumber(); let _forward_payload = source.readCell(); - return { $$type: 'TokenTransfer' as const, queryId: _queryId, amount: _amount, destination: _destination, response_destination: _response_destination, custom_payload: _custom_payload, forward_ton_amount: _forward_ton_amount, forward_payload: _forward_payload }; + return { $$type: 'TokenTransfer' as const, query_id: _query_id, amount: _amount, destination: _destination, response_destination: _response_destination, custom_payload: _custom_payload, forward_ton_amount: _forward_ton_amount, forward_payload: _forward_payload }; } function storeTupleTokenTransfer(source: TokenTransfer) { let builder = new TupleBuilder(); - builder.writeNumber(source.queryId); + builder.writeNumber(source.query_id); builder.writeNumber(source.amount); builder.writeAddress(source.destination); builder.writeAddress(source.response_destination); @@ -470,7 +473,7 @@ function dictValueParserTokenTransfer(): DictionaryValue { export type TokenTransferInternal = { $$type: 'TokenTransferInternal'; - queryId: bigint; + query_id: bigint; amount: bigint; from: Address; response_destination: Address; @@ -482,7 +485,7 @@ export function storeTokenTransferInternal(src: TokenTransferInternal) { return (builder: Builder) => { let b_0 = builder; b_0.storeUint(395134233, 32); - b_0.storeUint(src.queryId, 64); + b_0.storeUint(src.query_id, 64); b_0.storeCoins(src.amount); b_0.storeAddress(src.from); b_0.storeAddress(src.response_destination); @@ -494,28 +497,28 @@ export function storeTokenTransferInternal(src: TokenTransferInternal) { export function loadTokenTransferInternal(slice: Slice) { let sc_0 = slice; if (sc_0.loadUint(32) !== 395134233) { throw Error('Invalid prefix'); } - let _queryId = sc_0.loadUintBig(64); + let _query_id = sc_0.loadUintBig(64); let _amount = sc_0.loadCoins(); let _from = sc_0.loadAddress(); let _response_destination = sc_0.loadAddress(); let _forward_ton_amount = sc_0.loadCoins(); let _forward_payload = sc_0.asCell(); - return { $$type: 'TokenTransferInternal' as const, queryId: _queryId, amount: _amount, from: _from, response_destination: _response_destination, forward_ton_amount: _forward_ton_amount, forward_payload: _forward_payload }; + return { $$type: 'TokenTransferInternal' as const, query_id: _query_id, amount: _amount, from: _from, response_destination: _response_destination, forward_ton_amount: _forward_ton_amount, forward_payload: _forward_payload }; } function loadTupleTokenTransferInternal(source: TupleReader) { - let _queryId = source.readBigNumber(); + let _query_id = source.readBigNumber(); let _amount = source.readBigNumber(); let _from = source.readAddress(); let _response_destination = source.readAddress(); let _forward_ton_amount = source.readBigNumber(); let _forward_payload = source.readCell(); - return { $$type: 'TokenTransferInternal' as const, queryId: _queryId, amount: _amount, from: _from, response_destination: _response_destination, forward_ton_amount: _forward_ton_amount, forward_payload: _forward_payload }; + return { $$type: 'TokenTransferInternal' as const, query_id: _query_id, amount: _amount, from: _from, response_destination: _response_destination, forward_ton_amount: _forward_ton_amount, forward_payload: _forward_payload }; } function storeTupleTokenTransferInternal(source: TokenTransferInternal) { let builder = new TupleBuilder(); - builder.writeNumber(source.queryId); + builder.writeNumber(source.query_id); builder.writeNumber(source.amount); builder.writeAddress(source.from); builder.writeAddress(source.response_destination); @@ -537,7 +540,7 @@ function dictValueParserTokenTransferInternal(): DictionaryValue { let b_0 = builder; b_0.storeUint(1935855772, 32); - b_0.storeUint(src.queryId, 64); + b_0.storeUint(src.query_id, 64); b_0.storeCoins(src.amount); b_0.storeAddress(src.from); b_0.storeBuilder(src.forward_payload.asBuilder()); @@ -557,24 +560,24 @@ export function storeTokenNotification(src: TokenNotification) { export function loadTokenNotification(slice: Slice) { let sc_0 = slice; if (sc_0.loadUint(32) !== 1935855772) { throw Error('Invalid prefix'); } - let _queryId = sc_0.loadUintBig(64); + let _query_id = sc_0.loadUintBig(64); let _amount = sc_0.loadCoins(); let _from = sc_0.loadAddress(); let _forward_payload = sc_0.asCell(); - return { $$type: 'TokenNotification' as const, queryId: _queryId, amount: _amount, from: _from, forward_payload: _forward_payload }; + return { $$type: 'TokenNotification' as const, query_id: _query_id, amount: _amount, from: _from, forward_payload: _forward_payload }; } function loadTupleTokenNotification(source: TupleReader) { - let _queryId = source.readBigNumber(); + let _query_id = source.readBigNumber(); let _amount = source.readBigNumber(); let _from = source.readAddress(); let _forward_payload = source.readCell(); - return { $$type: 'TokenNotification' as const, queryId: _queryId, amount: _amount, from: _from, forward_payload: _forward_payload }; + return { $$type: 'TokenNotification' as const, query_id: _query_id, amount: _amount, from: _from, forward_payload: _forward_payload }; } function storeTupleTokenNotification(source: TokenNotification) { let builder = new TupleBuilder(); - builder.writeNumber(source.queryId); + builder.writeNumber(source.query_id); builder.writeNumber(source.amount); builder.writeAddress(source.from); builder.writeSlice(source.forward_payload); @@ -594,7 +597,7 @@ function dictValueParserTokenNotification(): DictionaryValue export type TokenBurn = { $$type: 'TokenBurn'; - queryId: bigint; + query_id: bigint; amount: bigint; response_destination: Address; custom_payload: Cell | null; @@ -604,7 +607,7 @@ export function storeTokenBurn(src: TokenBurn) { return (builder: Builder) => { let b_0 = builder; b_0.storeUint(1499400124, 32); - b_0.storeUint(src.queryId, 64); + b_0.storeUint(src.query_id, 64); b_0.storeCoins(src.amount); b_0.storeAddress(src.response_destination); if (src.custom_payload !== null && src.custom_payload !== undefined) { b_0.storeBit(true).storeRef(src.custom_payload); } else { b_0.storeBit(false); } @@ -614,24 +617,24 @@ export function storeTokenBurn(src: TokenBurn) { export function loadTokenBurn(slice: Slice) { let sc_0 = slice; if (sc_0.loadUint(32) !== 1499400124) { throw Error('Invalid prefix'); } - let _queryId = sc_0.loadUintBig(64); + let _query_id = sc_0.loadUintBig(64); let _amount = sc_0.loadCoins(); let _response_destination = sc_0.loadAddress(); let _custom_payload = sc_0.loadBit() ? sc_0.loadRef() : null; - return { $$type: 'TokenBurn' as const, queryId: _queryId, amount: _amount, response_destination: _response_destination, custom_payload: _custom_payload }; + return { $$type: 'TokenBurn' as const, query_id: _query_id, amount: _amount, response_destination: _response_destination, custom_payload: _custom_payload }; } function loadTupleTokenBurn(source: TupleReader) { - let _queryId = source.readBigNumber(); + let _query_id = source.readBigNumber(); let _amount = source.readBigNumber(); let _response_destination = source.readAddress(); let _custom_payload = source.readCellOpt(); - return { $$type: 'TokenBurn' as const, queryId: _queryId, amount: _amount, response_destination: _response_destination, custom_payload: _custom_payload }; + return { $$type: 'TokenBurn' as const, query_id: _query_id, amount: _amount, response_destination: _response_destination, custom_payload: _custom_payload }; } function storeTupleTokenBurn(source: TokenBurn) { let builder = new TupleBuilder(); - builder.writeNumber(source.queryId); + builder.writeNumber(source.query_id); builder.writeNumber(source.amount); builder.writeAddress(source.response_destination); builder.writeCell(source.custom_payload); @@ -651,7 +654,7 @@ function dictValueParserTokenBurn(): DictionaryValue { export type TokenBurnNotification = { $$type: 'TokenBurnNotification'; - queryId: bigint; + query_id: bigint; amount: bigint; response_destination: Address; } @@ -660,7 +663,7 @@ export function storeTokenBurnNotification(src: TokenBurnNotification) { return (builder: Builder) => { let b_0 = builder; b_0.storeUint(2078119902, 32); - b_0.storeUint(src.queryId, 64); + b_0.storeUint(src.query_id, 64); b_0.storeCoins(src.amount); b_0.storeAddress(src.response_destination); }; @@ -669,22 +672,22 @@ export function storeTokenBurnNotification(src: TokenBurnNotification) { export function loadTokenBurnNotification(slice: Slice) { let sc_0 = slice; if (sc_0.loadUint(32) !== 2078119902) { throw Error('Invalid prefix'); } - let _queryId = sc_0.loadUintBig(64); + let _query_id = sc_0.loadUintBig(64); let _amount = sc_0.loadCoins(); let _response_destination = sc_0.loadAddress(); - return { $$type: 'TokenBurnNotification' as const, queryId: _queryId, amount: _amount, response_destination: _response_destination }; + return { $$type: 'TokenBurnNotification' as const, query_id: _query_id, amount: _amount, response_destination: _response_destination }; } function loadTupleTokenBurnNotification(source: TupleReader) { - let _queryId = source.readBigNumber(); + let _query_id = source.readBigNumber(); let _amount = source.readBigNumber(); let _response_destination = source.readAddress(); - return { $$type: 'TokenBurnNotification' as const, queryId: _queryId, amount: _amount, response_destination: _response_destination }; + return { $$type: 'TokenBurnNotification' as const, query_id: _query_id, amount: _amount, response_destination: _response_destination }; } function storeTupleTokenBurnNotification(source: TokenBurnNotification) { let builder = new TupleBuilder(); - builder.writeNumber(source.queryId); + builder.writeNumber(source.query_id); builder.writeNumber(source.amount); builder.writeAddress(source.response_destination); return builder.build(); @@ -703,32 +706,32 @@ function dictValueParserTokenBurnNotification(): DictionaryValue { let b_0 = builder; b_0.storeUint(3576854235, 32); - b_0.storeUint(src.queryId, 64); + b_0.storeUint(src.query_id, 64); }; } export function loadTokenExcesses(slice: Slice) { let sc_0 = slice; if (sc_0.loadUint(32) !== 3576854235) { throw Error('Invalid prefix'); } - let _queryId = sc_0.loadUintBig(64); - return { $$type: 'TokenExcesses' as const, queryId: _queryId }; + let _query_id = sc_0.loadUintBig(64); + return { $$type: 'TokenExcesses' as const, query_id: _query_id }; } function loadTupleTokenExcesses(source: TupleReader) { - let _queryId = source.readBigNumber(); - return { $$type: 'TokenExcesses' as const, queryId: _queryId }; + let _query_id = source.readBigNumber(); + return { $$type: 'TokenExcesses' as const, query_id: _query_id }; } function storeTupleTokenExcesses(source: TokenExcesses) { let builder = new TupleBuilder(); - builder.writeNumber(source.queryId); + builder.writeNumber(source.query_id); return builder.build(); } @@ -785,6 +788,110 @@ function dictValueParserTokenUpdateContent(): DictionaryValue { + let b_0 = builder; + b_0.storeUint(745978227, 32); + b_0.storeUint(src.query_id, 64); + b_0.storeAddress(src.owner_address); + b_0.storeBit(src.include_address); + }; +} + +export function loadProvideWalletAddress(slice: Slice) { + let sc_0 = slice; + if (sc_0.loadUint(32) !== 745978227) { throw Error('Invalid prefix'); } + let _query_id = sc_0.loadUintBig(64); + let _owner_address = sc_0.loadAddress(); + let _include_address = sc_0.loadBit(); + return { $$type: 'ProvideWalletAddress' as const, query_id: _query_id, owner_address: _owner_address, include_address: _include_address }; +} + +function loadTupleProvideWalletAddress(source: TupleReader) { + let _query_id = source.readBigNumber(); + let _owner_address = source.readAddress(); + let _include_address = source.readBoolean(); + return { $$type: 'ProvideWalletAddress' as const, query_id: _query_id, owner_address: _owner_address, include_address: _include_address }; +} + +function storeTupleProvideWalletAddress(source: ProvideWalletAddress) { + let builder = new TupleBuilder(); + builder.writeNumber(source.query_id); + builder.writeAddress(source.owner_address); + builder.writeBoolean(source.include_address); + return builder.build(); +} + +function dictValueParserProvideWalletAddress(): DictionaryValue { + return { + serialize: (src, buidler) => { + buidler.storeRef(beginCell().store(storeProvideWalletAddress(src)).endCell()); + }, + parse: (src) => { + return loadProvideWalletAddress(src.loadRef().beginParse()); + } + } +} + +export type TakeWalletAddress = { + $$type: 'TakeWalletAddress'; + query_id: bigint; + wallet_address: Address; + owner_address: Address | null; +} + +export function storeTakeWalletAddress(src: TakeWalletAddress) { + return (builder: Builder) => { + let b_0 = builder; + b_0.storeUint(3513996288, 32); + b_0.storeUint(src.query_id, 64); + b_0.storeAddress(src.wallet_address); + b_0.storeAddress(src.owner_address); + }; +} + +export function loadTakeWalletAddress(slice: Slice) { + let sc_0 = slice; + if (sc_0.loadUint(32) !== 3513996288) { throw Error('Invalid prefix'); } + let _query_id = sc_0.loadUintBig(64); + let _wallet_address = sc_0.loadAddress(); + let _owner_address = sc_0.loadMaybeAddress(); + return { $$type: 'TakeWalletAddress' as const, query_id: _query_id, wallet_address: _wallet_address, owner_address: _owner_address }; +} + +function loadTupleTakeWalletAddress(source: TupleReader) { + let _query_id = source.readBigNumber(); + let _wallet_address = source.readAddress(); + let _owner_address = source.readAddressOpt(); + return { $$type: 'TakeWalletAddress' as const, query_id: _query_id, wallet_address: _wallet_address, owner_address: _owner_address }; +} + +function storeTupleTakeWalletAddress(source: TakeWalletAddress) { + let builder = new TupleBuilder(); + builder.writeNumber(source.query_id); + builder.writeAddress(source.wallet_address); + builder.writeAddress(source.owner_address); + return builder.build(); +} + +function dictValueParserTakeWalletAddress(): DictionaryValue { + return { + serialize: (src, buidler) => { + buidler.storeRef(beginCell().store(storeTakeWalletAddress(src)).endCell()); + }, + parse: (src) => { + return loadTakeWalletAddress(src.loadRef().beginParse()); + } + } +} + export type Mint = { $$type: 'Mint'; amount: bigint; @@ -836,7 +943,7 @@ function dictValueParserMint(): DictionaryValue { $$type: 'SampleJetton_init_args'; owner: Address; content: Cell; - maxSupply: bigint; + max_supply: bigint; } function initSampleJetton_init_args(src: SampleJetton_init_args) { @@ -844,17 +951,17 @@ function initSampleJetton_init_args(src: SampleJetton_init_args) { let b_0 = builder; b_0.storeAddress(src.owner); b_0.storeRef(src.content); - b_0.storeInt(src.maxSupply, 257); + b_0.storeInt(src.max_supply, 257); }; } -async function SampleJetton_init(owner: Address, content: Cell, maxSupply: bigint) { - const __code = Cell.fromBase64('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'); - const __system = Cell.fromBase64('te6cckECQQEADQEAAQHAAQIBICACAQW+xXwDART/APSkE/S88sgLBAIBYg8FAgEgDQYCASAMBwIBSAkIAHWybuNDVpcGZzOi8vUW1WRDRuWjJDWENSaWNjVk1IcDQyZXVnSEw3S0pDcDdnOFRnSjNHN3E5V3U1boIAIDeKALCgAPu+7UTQ0gABgCE7kts8VQLbPGwxgdFgC5u70YJwXOw9XSyuex6E7DnWSoUbZoJwndY1LStkfLMi068t/fFiOYJwIFXAG4BnY5TOWDquRyWyw4JwnZdOWrNOy3M6DpZtlGbopIJwndHgA+WzYDyfyDqyWayiE4AhG/2BbZ5tnjYaQdDgEY+ENTEts8MFRjMFIwPgN60AHQ0wMBcbCjAfpAASDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IhUUFMDbwT4YQL4Yts8VRLbPPLggh0REACmyPhDAcx/AcoAVSBQI4EBAc8AASDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IjPFgEg10mBAQu68uCIINcLCiCBBP+68tCJgwm68uCIzxbJ7VQC7gGOW4Ag1yFwIddJwh+VMCDXCx/eIIIQF41FGbqOGjDTHwGCEBeNRRm68uCB0z/6AFlsEjEToAJ/4IIQe92X3rqOGdMfAYIQe92X3rry4IHTP/oAWWwSMROgAn/gMH/gcCHXScIflTAg1wsf3iCCEA+KfqW64wIgGBIDuIIQF41FGbqPCDDbPGwW2zx/4IIQWV8HvLqOvtMfAYIQWV8HvLry4IHTP/oA+kABINdJgQELuvLgiCDXCwoggQT/uvLQiYMJuvLgiAHSAAGR1JJtAeJVMGwU4DBwFxQTAvhb+EFvJIERTVODxwXy9FGEoYIA9fwhwv/y9EMwUjnbPIIAqZ4BggkxLQCgggiYloCgErzy9HCAQAN/UTbIVSCCEHvdl95QBMsfEss/AfoCASDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IjPFskkRBRQMxRDMG1t2zx/GzoE9vhBbyRToscFs47T+ENTuNs8AYIAptQCcFnIcAHLAXMBywFwAcsAEszMyfkAyHIBywFwAcsAEsoHy//J0CDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IhSQMcF8vTeUcigggD1/CHC//L0QLor2zwQNEvN2zxRo6FQCj4WGxUC9qEiwgCOynNwKEgTUHTIVTCCEHNi0JxQBcsfE8s/AfoCASDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IjPFgHPFsknRhRQVRRDMG1t2zwBlBA1bEHiIW6zjptwA8gBghDVMnbbWMsfyz/JQTByECRDAG1t2zySXwPiATo6ACz4J28QIaGCCJiWgGa2CKGCCJiWgKChALLTHwGCEBeNRRm68uCB0z/6APpAASDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IgB+kABINdJgQELuvLgiCDXCwoggQT/uvLQiYMJuvLgiAH6AFFVFRRDMAIQMNs8bBfbPH8cGQSKMvhBbySBEU1Tw8cF8vRUcyEj2zxEMFJE2zygggnJw4ABoIEQPwGCCJiWgLYIErzy9FGEoYIA9fwhwv/y9PhDVCB12zxcGxs+GgLCcFnIcAHLAXMBywFwAcsAEszMyfkAyHIBywFwAcsAEsoHy//J0CDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IhQdnCAQH8sSBNQ58hVUNs8yRBWXiIQOQIQNhA1EDTbPDw6AGRsMfpAASDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4Igw+gAxcdch+gAx+gAwpwOrAADG0x8BghAPin6luvLggdM/+gD6QAEg10mBAQu68uCIINcLCiCBBP+68tCJgwm68uCIAfpAASDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IgB0gABkdSSbQHi+gBRZhYVFEMwAcDtRNDUAfhj0gABjkiBAQHXAPpAASDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IgB+kABINdJgQELuvLgiCDXCwoggQT/uvLQiYMJuvLgiEMwbBPg+CjXCwqDCbry4IkeAYr6QAEg10mBAQu68uCIINcLCiCBBP+68tCJgwm68uCIAfpAASDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IgSAtEB2zwfAARwAgEFvVwsIQEU/wD0pBP0vPLICyICAWIxIwIBIC8kAgEgKCUCAUgnJgB1sm7jQ1aXBmczovL1FtUHlTNFVSeFlBWHViOWpLVkFoUXpWdjczTHZFUFlhRkhXcXdEbTdmUmFERk2CAAEbCvu1E0NIAAYAIBICopAN23ejBOC52Hq6WVz2PQnYc6yVCjbNBOE7rGpaVsj5ZkWnXlv74sRzBOBAq4A3AM7HKZywdVyOS2WHBOE7Lpy1Zp2W5nQdLNsozdFJBOGEyIpMmvt8kXL2wztOq6QLBOCBnOrTzivzpKFgOsLcTI9lACAVgtKwIRrxbtnm2eNirAPywBFvgo2zwwVGUwVGZgPQJNrbyQa6TAgIXdeXBEEGuFhRBAgn/deWhEwYTdeXBEbZ4qgm2eNijAPy4Bhts8cFnIcAHLAXMBywFwAcsAEszMyfkAyHIBywFwAcsAEsoHy//J0CDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4Ig9AhG+KO7Z5tnjYow/MAACIwLq0AHQ0wMBcbCjAfpAASDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IhUUFMDbwT4YQL4Yts8VRTbPPLggsj4QwHMfwHKAFVAUFT6Algg10mBAQu68uCIINcLCiCBBP+68tCJgwm68uCIzxbMEsoAAfoCye1UPzIC9O2i7fsBkjB/4HAh10nCH5UwINcLH94gghD8cIvSuo7RMNMfAYIQ/HCL0rry4IGBAQHXAPpAASDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IgSbBL4QW8kECNfAyaBDpYCxwXy9IFI7CTy9FEV2zx/4CCCEK8comq6ODMDXo6bMNMfAYIQrxyiarry4IHUATFVQNs8MhA0QwB/4CCCEHvdl9664wLAAJEw4w1wNzU0Afr5ASCC8Py+uaSAlmR3SAY5x86kpXiqahE7KQOybQG8OEZj7O72uo6XMPhBbyQQI18DgUjsI/L0gGQl2zx/2zHggvDcAExbdb50N2vXnfhxPyOQYgzIowlQaLBYPrKMo6yLoLqOFzH4QW8kECNfAyOBDpYCxwXy9HABf9sx4DgC3DDTHwGCEHvdl9668uCB0z/6APpAASDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IhDMGwTEEcQNkV2Jts8UEehJW6zjqBwcIBCB8gBghDVMnbbWMsfyz/JEEhBMBcQJBAjbW3bPJI0NOJEEwJ/NjoBtPhBbyQQI18DVVDbPAGBEU0CcFnIcAHLAXMBywFwAcsAEszMyfkAyHIBywFwAcsAEsoHy//J0CDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IgXxwUW8vRVAz0AEvhCUkDHBfLghAP0gRryU4KgJbvy9FFxoFVB2zxccFnIcAHLAXMBywFwAcsAEszMyfkAyHIBywFwAcsAEsoHy//J0CDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4Ihwf4BAIvgoIcjJ0BA1EE8QIwIREALIVVDbPMlGUBBLEDpAuhBGEEU9PDkBCNs8QDQ6AcrIcQHKAVAHAcoAcAHKAlAFINdJgQELuvLgiCDXCwoggQT/uvLQiYMJuvLgiM8WUAP6AnABymgjbrORf5MkbrPilzMzAXABygDjDSFus5x/AcoAASBu8tCAAcyVMXABygDiyQH7ADsAmH8BygDIcAHKAHABygAkbrOdfwHKAAQgbvLQgFAEzJY0A3ABygDiJG6znX8BygAEIG7y0IBQBMyWNANwAcoA4nABygACfwHKAALJWMwAqoIQF41FGVAHyx8Vyz9QA/oCASDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IjPFgEg10mBAQu68uCIINcLCiCBBP+68tCJgwm68uCIzxYB+gIBzxYBDvhD+ChY2zw+ANoC0PQEMG0BggDYrwGAEPQPb6Hy4IcBggDYryICgBD0F8gByPQAyQHMcAHKAEADWSDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IjPFgEg10mBAQu68uCIINcLCiCBBP+68tCJgwm68uCIzxbJAeDtRNDUAfhj0gABjiv6APpAASDXSYEBC7ry4Igg1wsKIIEE/7ry0ImDCbry4IgB1NIA+gBVQGwV4Pgo1wsKgwm68uCJ+kABINdJgQELuvLgiCDXCwoggQT/uvLQiYMJuvLgiAHUgQEB1wBVIAPRWNs8QAAKcFUgfwEd6Lmd'); +async function SampleJetton_init(owner: Address, content: Cell, max_supply: bigint) { + const __code = Cell.fromBase64('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'); + const __system = Cell.fromBase64('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'); let builder = beginCell(); builder.storeRef(__system); builder.storeUint(0, 1); - initSampleJetton_init_args({ $$type: 'SampleJetton_init_args', owner, content, maxSupply })(builder); + initSampleJetton_init_args({ $$type: 'SampleJetton_init_args', owner, content, max_supply })(builder); const __data = builder.endCell(); return { code: __code, data: __data }; } @@ -884,24 +991,60 @@ const SampleJetton_errors: { [key: number]: { message: string } } = { 135: { message: `Code of a contract was not found` }, 136: { message: `Invalid address` }, 137: { message: `Masterchain support is not enabled for this contract` }, - 3734: { message: `Not Owner` }, + 3688: { message: `Not mintable` }, 4159: { message: `Invalid value!!` }, 4429: { message: `Invalid sender` }, - 6898: { message: `The total supply will be overlapping.` }, + 12241: { message: `Max supply exceeded` }, + 14534: { message: `Not owner` }, 18668: { message: `Can't Mint Anymore` }, + 23951: { message: `Insufficient gas` }, 42708: { message: `Invalid sender!` }, 43422: { message: `Invalid value - Burn` }, 62972: { message: `Invalid balance` }, } +const SampleJetton_types: ABIType[] = [ + {"name":"StateInit","header":null,"fields":[{"name":"code","type":{"kind":"simple","type":"cell","optional":false}},{"name":"data","type":{"kind":"simple","type":"cell","optional":false}}]}, + {"name":"Context","header":null,"fields":[{"name":"bounced","type":{"kind":"simple","type":"bool","optional":false}},{"name":"sender","type":{"kind":"simple","type":"address","optional":false}},{"name":"value","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"raw","type":{"kind":"simple","type":"slice","optional":false}}]}, + {"name":"SendParameters","header":null,"fields":[{"name":"bounce","type":{"kind":"simple","type":"bool","optional":false}},{"name":"to","type":{"kind":"simple","type":"address","optional":false}},{"name":"value","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"mode","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"body","type":{"kind":"simple","type":"cell","optional":true}},{"name":"code","type":{"kind":"simple","type":"cell","optional":true}},{"name":"data","type":{"kind":"simple","type":"cell","optional":true}}]}, + {"name":"ChangeOwner","header":2174598809,"fields":[{"name":"queryId","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"newOwner","type":{"kind":"simple","type":"address","optional":false}}]}, + {"name":"ChangeOwnerOk","header":846932810,"fields":[{"name":"queryId","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"newOwner","type":{"kind":"simple","type":"address","optional":false}}]}, + {"name":"JettonData","header":null,"fields":[{"name":"total_supply","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"mintable","type":{"kind":"simple","type":"bool","optional":false}},{"name":"owner","type":{"kind":"simple","type":"address","optional":false}},{"name":"content","type":{"kind":"simple","type":"cell","optional":false}},{"name":"wallet_code","type":{"kind":"simple","type":"cell","optional":false}}]}, + {"name":"JettonWalletData","header":null,"fields":[{"name":"balance","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"owner","type":{"kind":"simple","type":"address","optional":false}},{"name":"master","type":{"kind":"simple","type":"address","optional":false}},{"name":"wallet_code","type":{"kind":"simple","type":"cell","optional":false}}]}, + {"name":"TokenTransfer","header":260734629,"fields":[{"name":"query_id","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"destination","type":{"kind":"simple","type":"address","optional":false}},{"name":"response_destination","type":{"kind":"simple","type":"address","optional":false}},{"name":"custom_payload","type":{"kind":"simple","type":"cell","optional":true}},{"name":"forward_ton_amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"forward_payload","type":{"kind":"simple","type":"slice","optional":false,"format":"remainder"}}]}, + {"name":"TokenTransferInternal","header":395134233,"fields":[{"name":"query_id","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"from","type":{"kind":"simple","type":"address","optional":false}},{"name":"response_destination","type":{"kind":"simple","type":"address","optional":false}},{"name":"forward_ton_amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"forward_payload","type":{"kind":"simple","type":"slice","optional":false,"format":"remainder"}}]}, + {"name":"TokenNotification","header":1935855772,"fields":[{"name":"query_id","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"from","type":{"kind":"simple","type":"address","optional":false}},{"name":"forward_payload","type":{"kind":"simple","type":"slice","optional":false,"format":"remainder"}}]}, + {"name":"TokenBurn","header":1499400124,"fields":[{"name":"query_id","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"response_destination","type":{"kind":"simple","type":"address","optional":false}},{"name":"custom_payload","type":{"kind":"simple","type":"cell","optional":true}}]}, + {"name":"TokenBurnNotification","header":2078119902,"fields":[{"name":"query_id","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"amount","type":{"kind":"simple","type":"uint","optional":false,"format":"coins"}},{"name":"response_destination","type":{"kind":"simple","type":"address","optional":false}}]}, + {"name":"TokenExcesses","header":3576854235,"fields":[{"name":"query_id","type":{"kind":"simple","type":"uint","optional":false,"format":64}}]}, + {"name":"TokenUpdateContent","header":2937889386,"fields":[{"name":"content","type":{"kind":"simple","type":"cell","optional":false}}]}, + {"name":"ProvideWalletAddress","header":745978227,"fields":[{"name":"query_id","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"owner_address","type":{"kind":"simple","type":"address","optional":false}},{"name":"include_address","type":{"kind":"simple","type":"bool","optional":false}}]}, + {"name":"TakeWalletAddress","header":3513996288,"fields":[{"name":"query_id","type":{"kind":"simple","type":"uint","optional":false,"format":64}},{"name":"wallet_address","type":{"kind":"simple","type":"address","optional":false}},{"name":"owner_address","type":{"kind":"simple","type":"address","optional":true}}]}, + {"name":"Mint","header":4235234258,"fields":[{"name":"amount","type":{"kind":"simple","type":"int","optional":false,"format":257}},{"name":"receiver","type":{"kind":"simple","type":"address","optional":false}}]}, +] + +const SampleJetton_getters: ABIGetter[] = [ + {"name":"get_jetton_data","arguments":[],"returnType":{"kind":"simple","type":"JettonData","optional":false}}, + {"name":"get_wallet_address","arguments":[{"name":"owner","type":{"kind":"simple","type":"address","optional":false}}],"returnType":{"kind":"simple","type":"address","optional":false}}, + {"name":"owner","arguments":[],"returnType":{"kind":"simple","type":"address","optional":false}}, +] + +const SampleJetton_receivers: ABIReceiver[] = [ + {"receiver":"internal","message":{"kind":"typed","type":"Mint"}}, + {"receiver":"internal","message":{"kind":"text","text":"Mint: 100"}}, + {"receiver":"internal","message":{"kind":"text","text":"Owner: MintClose"}}, + {"receiver":"internal","message":{"kind":"typed","type":"TokenUpdateContent"}}, + {"receiver":"internal","message":{"kind":"typed","type":"TokenBurnNotification"}}, +] + export class SampleJetton implements Contract { - static async init(owner: Address, content: Cell, maxSupply: bigint) { - return await SampleJetton_init(owner, content, maxSupply); + static async init(owner: Address, content: Cell, max_supply: bigint) { + return await SampleJetton_init(owner, content, max_supply); } - static async fromInit(owner: Address, content: Cell, maxSupply: bigint) { - const init = await SampleJetton_init(owner, content, maxSupply); + static async fromInit(owner: Address, content: Cell, max_supply: bigint) { + const init = await SampleJetton_init(owner, content, max_supply); const address = contractAddress(0, init); return new SampleJetton(address, init); } @@ -913,7 +1056,10 @@ export class SampleJetton implements Contract { readonly address: Address; readonly init?: { code: Cell, data: Cell }; readonly abi: ContractABI = { - errors: SampleJetton_errors + types: SampleJetton_types, + getters: SampleJetton_getters, + receivers: SampleJetton_receivers, + errors: SampleJetton_errors, }; private constructor(address: Address, init?: { code: Cell, data: Cell }) { diff --git a/yarn.lock b/yarn.lock index 38b3235..103a060 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4,7 +4,7 @@ "@ampproject/remapping@^2.2.0": version "2.2.0" - resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.0.tgz#56c133824780de3174aed5ab6834f3026790154d" + resolved "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz" integrity sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w== dependencies: "@jridgewell/gen-mapping" "^0.1.0" @@ -12,12 +12,12 @@ "@assemblyscript/loader@^0.9.4": version "0.9.4" - resolved "https://registry.yarnpkg.com/@assemblyscript/loader/-/loader-0.9.4.tgz#a483c54c1253656bb33babd464e3154a173e1577" + resolved "https://registry.npmjs.org/@assemblyscript/loader/-/loader-0.9.4.tgz" integrity sha512-HazVq9zwTVwGmqdwYzu7WyQ6FQVZ7SwET0KKQuKm55jD0IfUpZgN0OPIiZG3zV1iSrVYcN0bdwLRXI/VNCYsUA== "@aws-crypto/sha256-js@^4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@aws-crypto/sha256-js/-/sha256-js-4.0.0.tgz#7feaad4d62cfaf6636a108763d0df0b01574ef0e" + resolved "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-4.0.0.tgz" integrity sha512-MHGJyjE7TX9aaqXj7zk2ppnFUOhaDs5sP+HtNS0evOxn72c+5njUmyJmpGd7TfyoDznZlHMmdo/xGUdu2NIjNQ== dependencies: "@aws-crypto/util" "^4.0.0" @@ -26,7 +26,7 @@ "@aws-crypto/util@^4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@aws-crypto/util/-/util-4.0.0.tgz#958d244eea457af65755e242673872f9d04a7a6f" + resolved "https://registry.npmjs.org/@aws-crypto/util/-/util-4.0.0.tgz" integrity sha512-2EnmPy2gsFZ6m8bwUQN4jq+IyXV3quHAcwPOS6ZA3k+geujiqI8aRokO2kFJe+idJ/P3v4qWI186rVMo0+zLDQ== dependencies: "@aws-sdk/types" "^3.222.0" @@ -35,33 +35,33 @@ "@aws-sdk/types@^3.222.0": version "3.290.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/types/-/types-3.290.0.tgz#06a14cf61c2e93d8d789665d2034260229a4de8f" + resolved "https://registry.npmjs.org/@aws-sdk/types/-/types-3.290.0.tgz" integrity sha512-uQLD9tLv8Q87CwrSB/taUoQ8wkGeFb1Gygc+kt5oClfMFP9HYzu944kW/1R7/J5LtBLT1QFYccd4gz6eOUNlsw== dependencies: tslib "^2.3.1" "@aws-sdk/util-utf8-browser@^3.0.0": version "3.259.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.259.0.tgz#3275a6f5eb334f96ca76635b961d3c50259fd9ff" + resolved "https://registry.npmjs.org/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.259.0.tgz" integrity sha512-UvFa/vR+e19XookZF8RzFZBrw2EUkQWxiBW0yYQAhvk3C+QVGl0H3ouca8LDBlBfQKXwmW3huo/59H8rwb1wJw== dependencies: tslib "^2.3.1" "@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.18.6": version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.18.6.tgz#3b25d38c89600baa2dcc219edfa88a74eb2c427a" + resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz" integrity sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q== dependencies: "@babel/highlight" "^7.18.6" "@babel/compat-data@^7.20.5": version "7.21.0" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.21.0.tgz#c241dc454e5b5917e40d37e525e2f4530c399298" + resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.0.tgz" integrity sha512-gMuZsmsgxk/ENC3O/fRw5QY8A9/uxQbbCEypnLIiYYc/qVJtEV7ouxC3EllIIwNzMqAQee5tanFabWsUOutS7g== -"@babel/core@^7.11.6", "@babel/core@^7.12.3": +"@babel/core@^7.0.0", "@babel/core@^7.0.0-0", "@babel/core@^7.11.6", "@babel/core@^7.12.3", "@babel/core@^7.8.0", "@babel/core@>=7.0.0-beta.0 <8": version "7.21.0" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.21.0.tgz#1341aefdcc14ccc7553fcc688dd8986a2daffc13" + resolved "https://registry.npmjs.org/@babel/core/-/core-7.21.0.tgz" integrity sha512-PuxUbxcW6ZYe656yL3EAhpy7qXKq0DmYsrJLpbB8XrsCP9Nm+XCg9XFMb5vIDliPD7+U/+M+QJlH17XOcB7eXA== dependencies: "@ampproject/remapping" "^2.2.0" @@ -82,7 +82,7 @@ "@babel/generator@^7.21.0", "@babel/generator@^7.7.2": version "7.21.1" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.21.1.tgz#951cc626057bc0af2c35cd23e9c64d384dea83dd" + resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.21.1.tgz" integrity sha512-1lT45bAYlQhFn/BHivJs43AiW2rg3/UbLyShGfF3C0KmHvO5fSghWd5kBJy30kpRRucGzXStvnnCFniCR2kXAA== dependencies: "@babel/types" "^7.21.0" @@ -92,7 +92,7 @@ "@babel/helper-compilation-targets@^7.20.7": version "7.20.7" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz#a6cd33e93629f5eb473b021aac05df62c4cd09bb" + resolved "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz" integrity sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ== dependencies: "@babel/compat-data" "^7.20.5" @@ -103,12 +103,12 @@ "@babel/helper-environment-visitor@^7.18.9": version "7.18.9" - resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz#0c0cee9b35d2ca190478756865bb3528422f51be" + resolved "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz" integrity sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg== "@babel/helper-function-name@^7.21.0": version "7.21.0" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz#d552829b10ea9f120969304023cd0645fa00b1b4" + resolved "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz" integrity sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg== dependencies: "@babel/template" "^7.20.7" @@ -116,21 +116,21 @@ "@babel/helper-hoist-variables@^7.18.6": version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz#d4d2c8fb4baeaa5c68b99cc8245c56554f926678" + resolved "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz" integrity sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q== dependencies: "@babel/types" "^7.18.6" "@babel/helper-module-imports@^7.18.6": version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz#1e3ebdbbd08aad1437b428c50204db13c5a3ca6e" + resolved "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz" integrity sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA== dependencies: "@babel/types" "^7.18.6" "@babel/helper-module-transforms@^7.21.0": version "7.21.0" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.21.0.tgz#89a8f86ad748870e3d024e470b2e8405e869db67" + resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.21.0.tgz" integrity sha512-eD/JQ21IG2i1FraJnTMbUarAUkA7G988ofehG5MDCRXaUU91rEBJuCeSoou2Sk1y4RbLYXzqEg1QLwEmRU4qcQ== dependencies: "@babel/helper-environment-visitor" "^7.18.9" @@ -144,41 +144,41 @@ "@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.19.0", "@babel/helper-plugin-utils@^7.8.0": version "7.20.2" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz#d1b9000752b18d0877cff85a5c376ce5c3121629" + resolved "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz" integrity sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ== "@babel/helper-simple-access@^7.20.2": version "7.20.2" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz#0ab452687fe0c2cfb1e2b9e0015de07fc2d62dd9" + resolved "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz" integrity sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA== dependencies: "@babel/types" "^7.20.2" "@babel/helper-split-export-declaration@^7.18.6": version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz#7367949bc75b20c6d5a5d4a97bba2824ae8ef075" + resolved "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz" integrity sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA== dependencies: "@babel/types" "^7.18.6" "@babel/helper-string-parser@^7.19.4": version "7.19.4" - resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz#38d3acb654b4701a9b77fb0615a96f775c3a9e63" + resolved "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz" integrity sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw== "@babel/helper-validator-identifier@^7.18.6", "@babel/helper-validator-identifier@^7.19.1": version "7.19.1" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz#7eea834cf32901ffdc1a7ee555e2f9c27e249ca2" + resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz" integrity sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w== "@babel/helper-validator-option@^7.18.6": version "7.21.0" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz#8224c7e13ace4bafdc4004da2cf064ef42673180" + resolved "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz" integrity sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ== "@babel/helpers@^7.21.0": version "7.21.0" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.21.0.tgz#9dd184fb5599862037917cdc9eecb84577dc4e7e" + resolved "https://registry.npmjs.org/@babel/helpers/-/helpers-7.21.0.tgz" integrity sha512-XXve0CBtOW0pd7MRzzmoyuSj0e3SEzj8pgyFxnTT1NJZL38BD1MK7yYrm8yefRPIDvNNe14xR4FdbHwpInD4rA== dependencies: "@babel/template" "^7.20.7" @@ -187,7 +187,7 @@ "@babel/highlight@^7.18.6": version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.18.6.tgz#81158601e93e2563795adcbfbdf5d64be3f2ecdf" + resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz" integrity sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g== dependencies: "@babel/helper-validator-identifier" "^7.18.6" @@ -196,119 +196,119 @@ "@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.21.0": version "7.21.1" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.21.1.tgz#a8f81ee2fe872af23faea4b17a08fcc869de7bcc" + resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.21.1.tgz" integrity sha512-JzhBFpkuhBNYUY7qs+wTzNmyCWUHEaAFpQQD2YfU1rPL38/L43Wvid0fFkiOCnHvsGncRZgEPyGnltABLcVDTg== "@babel/plugin-syntax-async-generators@^7.8.4": version "7.8.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz" integrity sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-bigint@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz#4c9a6f669f5d0cdf1b90a1671e9a146be5300cea" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz" integrity sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-class-properties@^7.8.3": version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz" integrity sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA== dependencies: "@babel/helper-plugin-utils" "^7.12.13" "@babel/plugin-syntax-import-meta@^7.8.3": version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz#ee601348c370fa334d2207be158777496521fd51" + 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== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-json-strings@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz#01ca21b668cd8218c9e640cb6dd88c5412b2c96a" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz" integrity sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-jsx@^7.7.2": version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz#a8feef63b010150abd97f1649ec296e849943ca0" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz" integrity sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q== dependencies: "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-syntax-logical-assignment-operators@^7.8.3": version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699" + 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== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-nullish-coalescing-operator@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz#167ed70368886081f74b5c36c65a88c03b66d1a9" + 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== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-numeric-separator@^7.8.3": version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz#b9b070b3e33570cd9fd07ba7fa91c0dd37b9af97" + 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== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-object-rest-spread@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871" + 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== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-optional-catch-binding@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz#6111a265bcfb020eb9efd0fdfd7d26402b9ed6c1" + 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== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-optional-chaining@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz#4f69c2ab95167e0180cd5336613f8c5788f7d48a" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz" integrity sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-top-level-await@^7.8.3": version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz#c1cfdadc35a646240001f06138247b741c34d94c" + 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== dependencies: "@babel/helper-plugin-utils" "^7.14.5" "@babel/plugin-syntax-typescript@^7.7.2": version "7.20.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.20.0.tgz#4e9a0cfc769c85689b77a2e642d24e9f697fc8c7" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.20.0.tgz" integrity sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ== dependencies: "@babel/helper-plugin-utils" "^7.19.0" "@babel/template@^7.20.7", "@babel/template@^7.3.3": version "7.20.7" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.20.7.tgz#a15090c2839a83b02aa996c0b4994005841fd5a8" + resolved "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz" integrity sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw== dependencies: "@babel/code-frame" "^7.18.6" "@babel/parser" "^7.20.7" "@babel/types" "^7.20.7" -"@babel/traverse@^7.21.0", "@babel/traverse@^7.7.2": +"@babel/traverse@^7.21.0": version "7.21.0" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.21.0.tgz#0e1807abd5db98e6a19c204b80ed1e3f5bca0edc" + resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.0.tgz" integrity sha512-Xdt2P1H4LKTO8ApPfnO1KmzYMFpp7D/EinoXzLYN/cHcBNrVCAkAtGUcXnHXrl/VGktureU6fkQrHSBE2URfoA== dependencies: "@babel/code-frame" "^7.18.6" @@ -324,7 +324,7 @@ "@babel/types@^7.0.0", "@babel/types@^7.18.6", "@babel/types@^7.20.2", "@babel/types@^7.20.7", "@babel/types@^7.21.0", "@babel/types@^7.3.0", "@babel/types@^7.3.3": version "7.21.0" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.21.0.tgz#1da00d89c2f18b226c9207d96edbeb79316a1819" + resolved "https://registry.npmjs.org/@babel/types/-/types-7.21.0.tgz" integrity sha512-uR7NWq2VNFnDi7EYqiRz2Jv/VQIu38tu64Zy8TX2nQFQ6etJ9V/Rr2msW8BS132mum2rL645qpDrLtAJtVpuow== dependencies: "@babel/helper-string-parser" "^7.19.4" @@ -333,26 +333,26 @@ "@bcoe/v8-coverage@^0.2.3": version "0.2.3" - resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" + resolved "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== "@cspotcode/source-map-support@^0.8.0": version "0.8.1" - resolved "https://registry.yarnpkg.com/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz#00629c35a688e05a88b1cda684fb9d5e73f000a1" + resolved "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz" integrity sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw== dependencies: "@jridgewell/trace-mapping" "0.3.9" -"@ipld/dag-pb@2.1.18", "@ipld/dag-pb@^2.0.2": +"@ipld/dag-pb@^2.0.2", "@ipld/dag-pb@2.1.18": version "2.1.18" - resolved "https://registry.yarnpkg.com/@ipld/dag-pb/-/dag-pb-2.1.18.tgz#12d63e21580e87c75fd1a2c62e375a78e355c16f" + resolved "https://registry.npmjs.org/@ipld/dag-pb/-/dag-pb-2.1.18.tgz" integrity sha512-ZBnf2fuX9y3KccADURG5vb9FaOeMjFkCrNysB0PtftME/4iCTjxfaLoNq/IAh5fTqUOMXvryN6Jyka4ZGuMLIg== dependencies: multiformats "^9.5.4" "@istanbuljs/load-nyc-config@^1.0.0": version "1.1.0" - resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" + resolved "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz" integrity sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ== dependencies: camelcase "^5.3.1" @@ -363,113 +363,113 @@ "@istanbuljs/schema@^0.1.2": version "0.1.3" - resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" + resolved "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz" integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== -"@jest/console@^29.4.3": - version "29.4.3" - resolved "https://registry.yarnpkg.com/@jest/console/-/console-29.4.3.tgz#1f25a99f7f860e4c46423b5b1038262466fadde1" - integrity sha512-W/o/34+wQuXlgqlPYTansOSiBnuxrTv61dEVkA6HNmpcgHLUjfaUbdqt6oVvOzaawwo9IdW9QOtMgQ1ScSZC4A== +"@jest/console@^29.7.0": + version "29.7.0" + resolved "https://registry.npmjs.org/@jest/console/-/console-29.7.0.tgz" + integrity sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg== dependencies: - "@jest/types" "^29.4.3" + "@jest/types" "^29.6.3" "@types/node" "*" chalk "^4.0.0" - jest-message-util "^29.4.3" - jest-util "^29.4.3" + jest-message-util "^29.7.0" + jest-util "^29.7.0" slash "^3.0.0" -"@jest/core@^29.4.3": - version "29.4.3" - resolved "https://registry.yarnpkg.com/@jest/core/-/core-29.4.3.tgz#829dd65bffdb490de5b0f69e97de8e3b5eadd94b" - integrity sha512-56QvBq60fS4SPZCuM7T+7scNrkGIe7Mr6PVIXUpu48ouvRaWOFqRPV91eifvFM0ay2HmfswXiGf97NGUN5KofQ== +"@jest/core@^29.7.0": + version "29.7.0" + resolved "https://registry.npmjs.org/@jest/core/-/core-29.7.0.tgz" + integrity sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg== dependencies: - "@jest/console" "^29.4.3" - "@jest/reporters" "^29.4.3" - "@jest/test-result" "^29.4.3" - "@jest/transform" "^29.4.3" - "@jest/types" "^29.4.3" + "@jest/console" "^29.7.0" + "@jest/reporters" "^29.7.0" + "@jest/test-result" "^29.7.0" + "@jest/transform" "^29.7.0" + "@jest/types" "^29.6.3" "@types/node" "*" ansi-escapes "^4.2.1" chalk "^4.0.0" ci-info "^3.2.0" exit "^0.1.2" graceful-fs "^4.2.9" - jest-changed-files "^29.4.3" - jest-config "^29.4.3" - jest-haste-map "^29.4.3" - jest-message-util "^29.4.3" - jest-regex-util "^29.4.3" - jest-resolve "^29.4.3" - jest-resolve-dependencies "^29.4.3" - jest-runner "^29.4.3" - jest-runtime "^29.4.3" - jest-snapshot "^29.4.3" - jest-util "^29.4.3" - jest-validate "^29.4.3" - jest-watcher "^29.4.3" + jest-changed-files "^29.7.0" + jest-config "^29.7.0" + jest-haste-map "^29.7.0" + jest-message-util "^29.7.0" + jest-regex-util "^29.6.3" + jest-resolve "^29.7.0" + jest-resolve-dependencies "^29.7.0" + jest-runner "^29.7.0" + jest-runtime "^29.7.0" + jest-snapshot "^29.7.0" + jest-util "^29.7.0" + jest-validate "^29.7.0" + jest-watcher "^29.7.0" micromatch "^4.0.4" - pretty-format "^29.4.3" + pretty-format "^29.7.0" slash "^3.0.0" strip-ansi "^6.0.0" -"@jest/environment@^29.4.3": - version "29.4.3" - resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-29.4.3.tgz#9fe2f3169c3b33815dc4bd3960a064a83eba6548" - integrity sha512-dq5S6408IxIa+lr54zeqce+QgI+CJT4nmmA+1yzFgtcsGK8c/EyiUb9XQOgz3BMKrRDfKseeOaxj2eO8LlD3lA== +"@jest/environment@^29.7.0": + version "29.7.0" + resolved "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz" + integrity sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw== dependencies: - "@jest/fake-timers" "^29.4.3" - "@jest/types" "^29.4.3" + "@jest/fake-timers" "^29.7.0" + "@jest/types" "^29.6.3" "@types/node" "*" - jest-mock "^29.4.3" + jest-mock "^29.7.0" -"@jest/expect-utils@^29.4.3": - version "29.4.3" - resolved "https://registry.yarnpkg.com/@jest/expect-utils/-/expect-utils-29.4.3.tgz#95ce4df62952f071bcd618225ac7c47eaa81431e" - integrity sha512-/6JWbkxHOP8EoS8jeeTd9dTfc9Uawi+43oLKHfp6zzux3U2hqOOVnV3ai4RpDYHOccL6g+5nrxpoc8DmJxtXVQ== +"@jest/expect-utils@^29.7.0": + version "29.7.0" + resolved "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz" + integrity sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA== dependencies: - jest-get-type "^29.4.3" + jest-get-type "^29.6.3" -"@jest/expect@^29.4.3": - version "29.4.3" - resolved "https://registry.yarnpkg.com/@jest/expect/-/expect-29.4.3.tgz#d31a28492e45a6bcd0f204a81f783fe717045c6e" - integrity sha512-iktRU/YsxEtumI9zsPctYUk7ptpC+AVLLk1Ax3AsA4g1C+8OOnKDkIQBDHtD5hA/+VtgMd5AWI5gNlcAlt2vxQ== +"@jest/expect@^29.7.0": + version "29.7.0" + resolved "https://registry.npmjs.org/@jest/expect/-/expect-29.7.0.tgz" + integrity sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ== dependencies: - expect "^29.4.3" - jest-snapshot "^29.4.3" + expect "^29.7.0" + jest-snapshot "^29.7.0" -"@jest/fake-timers@^29.4.3": - version "29.4.3" - resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-29.4.3.tgz#31e982638c60fa657d310d4b9d24e023064027b0" - integrity sha512-4Hote2MGcCTWSD2gwl0dwbCpBRHhE6olYEuTj8FMowdg3oQWNKr2YuxenPQYZ7+PfqPY1k98wKDU4Z+Hvd4Tiw== +"@jest/fake-timers@^29.7.0": + version "29.7.0" + resolved "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz" + integrity sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ== dependencies: - "@jest/types" "^29.4.3" + "@jest/types" "^29.6.3" "@sinonjs/fake-timers" "^10.0.2" "@types/node" "*" - jest-message-util "^29.4.3" - jest-mock "^29.4.3" - jest-util "^29.4.3" + jest-message-util "^29.7.0" + jest-mock "^29.7.0" + jest-util "^29.7.0" -"@jest/globals@^29.4.3": - version "29.4.3" - resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-29.4.3.tgz#63a2c4200d11bc6d46f12bbe25b07f771fce9279" - integrity sha512-8BQ/5EzfOLG7AaMcDh7yFCbfRLtsc+09E1RQmRBI4D6QQk4m6NSK/MXo+3bJrBN0yU8A2/VIcqhvsOLFmziioA== +"@jest/globals@*", "@jest/globals@^29.7.0": + version "29.7.0" + resolved "https://registry.npmjs.org/@jest/globals/-/globals-29.7.0.tgz" + integrity sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ== dependencies: - "@jest/environment" "^29.4.3" - "@jest/expect" "^29.4.3" - "@jest/types" "^29.4.3" - jest-mock "^29.4.3" + "@jest/environment" "^29.7.0" + "@jest/expect" "^29.7.0" + "@jest/types" "^29.6.3" + jest-mock "^29.7.0" -"@jest/reporters@^29.4.3": - version "29.4.3" - resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-29.4.3.tgz#0a68a0c0f20554760cc2e5443177a0018969e353" - integrity sha512-sr2I7BmOjJhyqj9ANC6CTLsL4emMoka7HkQpcoMRlhCbQJjz2zsRzw0BDPiPyEFDXAbxKgGFYuQZiSJ1Y6YoTg== +"@jest/reporters@^29.7.0": + version "29.7.0" + resolved "https://registry.npmjs.org/@jest/reporters/-/reporters-29.7.0.tgz" + integrity sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg== dependencies: "@bcoe/v8-coverage" "^0.2.3" - "@jest/console" "^29.4.3" - "@jest/test-result" "^29.4.3" - "@jest/transform" "^29.4.3" - "@jest/types" "^29.4.3" - "@jridgewell/trace-mapping" "^0.3.15" + "@jest/console" "^29.7.0" + "@jest/test-result" "^29.7.0" + "@jest/transform" "^29.7.0" + "@jest/types" "^29.6.3" + "@jridgewell/trace-mapping" "^0.3.18" "@types/node" "*" chalk "^4.0.0" collect-v8-coverage "^1.0.0" @@ -477,81 +477,81 @@ glob "^7.1.3" graceful-fs "^4.2.9" istanbul-lib-coverage "^3.0.0" - istanbul-lib-instrument "^5.1.0" + istanbul-lib-instrument "^6.0.0" istanbul-lib-report "^3.0.0" istanbul-lib-source-maps "^4.0.0" istanbul-reports "^3.1.3" - jest-message-util "^29.4.3" - jest-util "^29.4.3" - jest-worker "^29.4.3" + jest-message-util "^29.7.0" + jest-util "^29.7.0" + jest-worker "^29.7.0" slash "^3.0.0" string-length "^4.0.1" strip-ansi "^6.0.0" v8-to-istanbul "^9.0.1" -"@jest/schemas@^29.4.3": - version "29.4.3" - resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-29.4.3.tgz#39cf1b8469afc40b6f5a2baaa146e332c4151788" - integrity sha512-VLYKXQmtmuEz6IxJsrZwzG9NvtkQsWNnWMsKxqWNu3+CnfzJQhp0WDDKWLVV9hLKr0l3SLLFRqcYHjhtyuDVxg== +"@jest/schemas@^29.6.3": + version "29.6.3" + resolved "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz" + integrity sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA== dependencies: - "@sinclair/typebox" "^0.25.16" + "@sinclair/typebox" "^0.27.8" -"@jest/source-map@^29.4.3": - version "29.4.3" - resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-29.4.3.tgz#ff8d05cbfff875d4a791ab679b4333df47951d20" - integrity sha512-qyt/mb6rLyd9j1jUts4EQncvS6Yy3PM9HghnNv86QBlV+zdL2inCdK1tuVlL+J+lpiw2BI67qXOrX3UurBqQ1w== +"@jest/source-map@^29.6.3": + version "29.6.3" + resolved "https://registry.npmjs.org/@jest/source-map/-/source-map-29.6.3.tgz" + integrity sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw== dependencies: - "@jridgewell/trace-mapping" "^0.3.15" + "@jridgewell/trace-mapping" "^0.3.18" callsites "^3.0.0" graceful-fs "^4.2.9" -"@jest/test-result@^29.4.3": - version "29.4.3" - resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-29.4.3.tgz#e13d973d16c8c7cc0c597082d5f3b9e7f796ccb8" - integrity sha512-Oi4u9NfBolMq9MASPwuWTlC5WvmNRwI4S8YrQg5R5Gi47DYlBe3sh7ILTqi/LGrK1XUE4XY9KZcQJTH1WJCLLA== +"@jest/test-result@^29.7.0": + version "29.7.0" + resolved "https://registry.npmjs.org/@jest/test-result/-/test-result-29.7.0.tgz" + integrity sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA== dependencies: - "@jest/console" "^29.4.3" - "@jest/types" "^29.4.3" + "@jest/console" "^29.7.0" + "@jest/types" "^29.6.3" "@types/istanbul-lib-coverage" "^2.0.0" collect-v8-coverage "^1.0.0" -"@jest/test-sequencer@^29.4.3": - version "29.4.3" - resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-29.4.3.tgz#0862e876a22993385a0f3e7ea1cc126f208a2898" - integrity sha512-yi/t2nES4GB4G0mjLc0RInCq/cNr9dNwJxcGg8sslajua5Kb4kmozAc+qPLzplhBgfw1vLItbjyHzUN92UXicw== +"@jest/test-sequencer@^29.7.0": + version "29.7.0" + resolved "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz" + integrity sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw== dependencies: - "@jest/test-result" "^29.4.3" + "@jest/test-result" "^29.7.0" graceful-fs "^4.2.9" - jest-haste-map "^29.4.3" + jest-haste-map "^29.7.0" slash "^3.0.0" -"@jest/transform@^29.4.3": - version "29.4.3" - resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-29.4.3.tgz#f7d17eac9cb5bb2e1222ea199c7c7e0835e0c037" - integrity sha512-8u0+fBGWolDshsFgPQJESkDa72da/EVwvL+II0trN2DR66wMwiQ9/CihaGfHdlLGFzbBZwMykFtxuwFdZqlKwg== +"@jest/transform@^29.7.0": + version "29.7.0" + resolved "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz" + integrity sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw== dependencies: "@babel/core" "^7.11.6" - "@jest/types" "^29.4.3" - "@jridgewell/trace-mapping" "^0.3.15" + "@jest/types" "^29.6.3" + "@jridgewell/trace-mapping" "^0.3.18" babel-plugin-istanbul "^6.1.1" chalk "^4.0.0" convert-source-map "^2.0.0" fast-json-stable-stringify "^2.1.0" graceful-fs "^4.2.9" - jest-haste-map "^29.4.3" - jest-regex-util "^29.4.3" - jest-util "^29.4.3" + jest-haste-map "^29.7.0" + jest-regex-util "^29.6.3" + jest-util "^29.7.0" micromatch "^4.0.4" pirates "^4.0.4" slash "^3.0.0" write-file-atomic "^4.0.2" -"@jest/types@^29.4.3": - version "29.4.3" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-29.4.3.tgz#9069145f4ef09adf10cec1b2901b2d390031431f" - integrity sha512-bPYfw8V65v17m2Od1cv44FH+SiKW7w2Xu7trhcdTLUmSv85rfKsP+qXSjO4KGJr4dtPSzl/gvslZBXctf1qGEA== +"@jest/types@^29.0.0", "@jest/types@^29.6.3": + version "29.6.3" + resolved "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz" + integrity sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw== dependencies: - "@jest/schemas" "^29.4.3" + "@jest/schemas" "^29.6.3" "@types/istanbul-lib-coverage" "^2.0.0" "@types/istanbul-reports" "^3.0.0" "@types/node" "*" @@ -560,7 +560,7 @@ "@jridgewell/gen-mapping@^0.1.0": version "0.1.1" - resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz#e5d2e450306a9491e3bd77e323e38d7aff315996" + resolved "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz" integrity sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w== dependencies: "@jridgewell/set-array" "^1.0.0" @@ -568,47 +568,47 @@ "@jridgewell/gen-mapping@^0.3.2": version "0.3.2" - resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz#c1aedc61e853f2bb9f5dfe6d4442d3b565b253b9" + resolved "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz" integrity sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A== dependencies: "@jridgewell/set-array" "^1.0.1" "@jridgewell/sourcemap-codec" "^1.4.10" "@jridgewell/trace-mapping" "^0.3.9" -"@jridgewell/resolve-uri@3.1.0", "@jridgewell/resolve-uri@^3.0.3": - version "3.1.0" - resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz#2203b118c157721addfe69d47b70465463066d78" - integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w== +"@jridgewell/resolve-uri@^3.0.3", "@jridgewell/resolve-uri@^3.1.0": + version "3.1.1" + resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz" + integrity sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA== "@jridgewell/set-array@^1.0.0", "@jridgewell/set-array@^1.0.1": version "1.1.2" - resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72" + resolved "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz" integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw== -"@jridgewell/sourcemap-codec@1.4.14", "@jridgewell/sourcemap-codec@^1.4.10": +"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14": version "1.4.14" - resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz#add4c98d341472a289190b424efbdb096991bb24" + resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz" integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw== +"@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.18", "@jridgewell/trace-mapping@^0.3.9": + version "0.3.19" + resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.19.tgz" + integrity sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw== + dependencies: + "@jridgewell/resolve-uri" "^3.1.0" + "@jridgewell/sourcemap-codec" "^1.4.14" + "@jridgewell/trace-mapping@0.3.9": version "0.3.9" - resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz#6534fd5933a53ba7cbf3a17615e273a0d1273ff9" + resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz" integrity sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ== dependencies: "@jridgewell/resolve-uri" "^3.0.3" "@jridgewell/sourcemap-codec" "^1.4.10" -"@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.15", "@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.9": - version "0.3.17" - resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz#793041277af9073b0951a7fe0f0d8c4c98c36985" - integrity sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g== - dependencies: - "@jridgewell/resolve-uri" "3.1.0" - "@jridgewell/sourcemap-codec" "1.4.14" - "@multiformats/murmur3@^1.0.3": version "1.1.3" - resolved "https://registry.yarnpkg.com/@multiformats/murmur3/-/murmur3-1.1.3.tgz#70349166992e5f981f1ddff0200fa775b2bf6606" + resolved "https://registry.npmjs.org/@multiformats/murmur3/-/murmur3-1.1.3.tgz" integrity sha512-wAPLUErGR8g6Lt+bAZn6218k9YQPym+sjszsXL6o4zfxbA22P+gxWZuuD9wDbwL55xrKO5idpcuQUX7/E3oHcw== dependencies: multiformats "^9.5.4" @@ -616,27 +616,27 @@ "@protobufjs/aspromise@^1.1.1", "@protobufjs/aspromise@^1.1.2": version "1.1.2" - resolved "https://registry.yarnpkg.com/@protobufjs/aspromise/-/aspromise-1.1.2.tgz#9b8b0cc663d669a7d8f6f5d0893a14d348f30fbf" + resolved "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz" integrity sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ== "@protobufjs/base64@^1.1.2": version "1.1.2" - resolved "https://registry.yarnpkg.com/@protobufjs/base64/-/base64-1.1.2.tgz#4c85730e59b9a1f1f349047dbf24296034bb2735" + resolved "https://registry.npmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz" integrity sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg== "@protobufjs/codegen@^2.0.4": version "2.0.4" - resolved "https://registry.yarnpkg.com/@protobufjs/codegen/-/codegen-2.0.4.tgz#7ef37f0d010fb028ad1ad59722e506d9262815cb" + resolved "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.4.tgz" integrity sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg== "@protobufjs/eventemitter@^1.1.0": version "1.1.0" - resolved "https://registry.yarnpkg.com/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz#355cbc98bafad5978f9ed095f397621f1d066b70" + resolved "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz" integrity sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q== "@protobufjs/fetch@^1.1.0": version "1.1.0" - resolved "https://registry.yarnpkg.com/@protobufjs/fetch/-/fetch-1.1.0.tgz#ba99fb598614af65700c1619ff06d454b0d84c45" + resolved "https://registry.npmjs.org/@protobufjs/fetch/-/fetch-1.1.0.tgz" integrity sha512-lljVXpqXebpsijW71PZaCYeIcE5on1w5DlQy5WH6GLbFryLUrBD4932W/E2BSpfRJWseIL4v/KPgBFxDOIdKpQ== dependencies: "@protobufjs/aspromise" "^1.1.1" @@ -644,52 +644,52 @@ "@protobufjs/float@^1.0.2": version "1.0.2" - resolved "https://registry.yarnpkg.com/@protobufjs/float/-/float-1.0.2.tgz#5e9e1abdcb73fc0a7cb8b291df78c8cbd97b87d1" + resolved "https://registry.npmjs.org/@protobufjs/float/-/float-1.0.2.tgz" integrity sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ== "@protobufjs/inquire@^1.1.0": version "1.1.0" - resolved "https://registry.yarnpkg.com/@protobufjs/inquire/-/inquire-1.1.0.tgz#ff200e3e7cf2429e2dcafc1140828e8cc638f089" + resolved "https://registry.npmjs.org/@protobufjs/inquire/-/inquire-1.1.0.tgz" integrity sha512-kdSefcPdruJiFMVSbn801t4vFK7KB/5gd2fYvrxhuJYg8ILrmn9SKSX2tZdV6V+ksulWqS7aXjBcRXl3wHoD9Q== "@protobufjs/path@^1.1.2": version "1.1.2" - resolved "https://registry.yarnpkg.com/@protobufjs/path/-/path-1.1.2.tgz#6cc2b20c5c9ad6ad0dccfd21ca7673d8d7fbf68d" + resolved "https://registry.npmjs.org/@protobufjs/path/-/path-1.1.2.tgz" integrity sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA== "@protobufjs/pool@^1.1.0": version "1.1.0" - resolved "https://registry.yarnpkg.com/@protobufjs/pool/-/pool-1.1.0.tgz#09fd15f2d6d3abfa9b65bc366506d6ad7846ff54" + resolved "https://registry.npmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz" integrity sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw== "@protobufjs/utf8@^1.1.0": version "1.1.0" - resolved "https://registry.yarnpkg.com/@protobufjs/utf8/-/utf8-1.1.0.tgz#a777360b5b39a1a2e5106f8e858f2fd2d060c570" + resolved "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz" integrity sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw== -"@sinclair/typebox@^0.25.16": - version "0.25.23" - resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.25.23.tgz#1c15b0d2b872d89cc0f47c7243eacb447df8b8bd" - integrity sha512-VEB8ygeP42CFLWyAJhN5OklpxUliqdNEUcXb4xZ/CINqtYGTjL5ukluKdKzQ0iWdUxyQ7B0539PAUhHKrCNWSQ== +"@sinclair/typebox@^0.27.8": + version "0.27.8" + resolved "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz" + integrity sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA== "@sinonjs/commons@^2.0.0": version "2.0.0" - resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-2.0.0.tgz#fd4ca5b063554307e8327b4564bd56d3b73924a3" + resolved "https://registry.npmjs.org/@sinonjs/commons/-/commons-2.0.0.tgz" integrity sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg== dependencies: type-detect "4.0.8" "@sinonjs/fake-timers@^10.0.2": version "10.0.2" - resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-10.0.2.tgz#d10549ed1f423d80639c528b6c7f5a1017747d0c" + resolved "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.0.2.tgz" integrity sha512-SwUDyjWnah1AaNl7kxsa7cfLhlTYoiyhDAIgyh+El30YvXs/o7OLXpYH88Zdhyx9JExKrmHDJ+10bwIcY80Jmw== dependencies: "@sinonjs/commons" "^2.0.0" -"@tact-lang/compiler@^1.1.0": - version "1.1.0" - resolved "https://registry.yarnpkg.com/@tact-lang/compiler/-/compiler-1.1.0.tgz#ebb2eaadc5be370f918e5179c23603c428339091" - integrity sha512-l7G6X8rZMGtOHPkowBMml5e4tyhp8nr645toene/8i5xRwrvvkYKc0CvUrh306GkDuxNPny8ghebhDP7GmFusQ== +"@tact-lang/compiler@^1.1.3": + version "1.1.4" + resolved "https://registry.npmjs.org/@tact-lang/compiler/-/compiler-1.1.4.tgz" + integrity sha512-yrwrQBV1uDc3vl6fmKhfrGxsPkHrE7kVduennhq1cKzToftObwdyIHufKROkWtdJevBGFOqA8ZL8rkCP18zK4w== dependencies: "@ipld/dag-pb" "2.1.18" "@tact-lang/opcode" "^0.0.13" @@ -709,7 +709,7 @@ "@tact-lang/emulator@^3.2.2": version "3.2.2" - resolved "https://registry.yarnpkg.com/@tact-lang/emulator/-/emulator-3.2.2.tgz#b80181cdd04500ec489482fd9648dd99a12e22a0" + resolved "https://registry.npmjs.org/@tact-lang/emulator/-/emulator-3.2.2.tgz" integrity sha512-v5J4hZJ2baUaziUg7MjAaTlOk1lIK9EFMZaQpRN/v9hkqByNNeB9G9pT9/7SrjTgdnUqNxDFjoxjPILSq6p59g== dependencies: prando "^6.0.1" @@ -718,44 +718,44 @@ "@tact-lang/opcode@^0.0.13": version "0.0.13" - resolved "https://registry.yarnpkg.com/@tact-lang/opcode/-/opcode-0.0.13.tgz#a168df5269809be7903f663fc216f0b9486a291a" + resolved "https://registry.npmjs.org/@tact-lang/opcode/-/opcode-0.0.13.tgz" integrity sha512-4FGp1p3ahVrXr2QbyD2FqmnvXTMYapTlRJSPhj4O1L2yIq7dp0CkFL9EdKOCUfyirT0X5en78PHLfj0CuQGD7A== "@ton-community/sandbox@^0.11.0": version "0.11.0" - resolved "https://registry.yarnpkg.com/@ton-community/sandbox/-/sandbox-0.11.0.tgz#411eae67c8f7aca07b6ae8e53233f6c3c21fcbe1" + resolved "https://registry.npmjs.org/@ton-community/sandbox/-/sandbox-0.11.0.tgz" integrity sha512-3tlSprRBTSu9m0tJTC3cl4MXQep1vfNMPqk9+JAXSRJu9ToEvIUVpqO6MQNkbz9LkKDuOEBs5vyqT37DlKKcWw== "@ton-community/test-utils@^0.3.0": version "0.3.0" - resolved "https://registry.yarnpkg.com/@ton-community/test-utils/-/test-utils-0.3.0.tgz#44e854cd023123d3cb57df3839730b0bc6dac609" + resolved "https://registry.npmjs.org/@ton-community/test-utils/-/test-utils-0.3.0.tgz" integrity sha512-eCw1c6a0TcKwiYEA4fmzPq+7dJtUx0UFYu+UEoRznIxEOcpEb8Ssjb9yMeiJEzbtUVMCkhEtpztdKt75ngDRWg== dependencies: node-inspect-extracted "^2.0.0" "@tsconfig/node10@^1.0.7": version "1.0.9" - resolved "https://registry.yarnpkg.com/@tsconfig/node10/-/node10-1.0.9.tgz#df4907fc07a886922637b15e02d4cebc4c0021b2" + resolved "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz" integrity sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA== "@tsconfig/node12@^1.0.7": version "1.0.11" - resolved "https://registry.yarnpkg.com/@tsconfig/node12/-/node12-1.0.11.tgz#ee3def1f27d9ed66dac6e46a295cffb0152e058d" + resolved "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz" integrity sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag== "@tsconfig/node14@^1.0.0": version "1.0.3" - resolved "https://registry.yarnpkg.com/@tsconfig/node14/-/node14-1.0.3.tgz#e4386316284f00b98435bf40f72f75a09dabf6c1" + resolved "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz" integrity sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow== "@tsconfig/node16@^1.0.2": version "1.0.3" - resolved "https://registry.yarnpkg.com/@tsconfig/node16/-/node16-1.0.3.tgz#472eaab5f15c1ffdd7f8628bd4c4f753995ec79e" + resolved "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.3.tgz" integrity sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ== "@types/babel__core@^7.1.14": version "7.20.0" - resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.20.0.tgz#61bc5a4cae505ce98e1e36c5445e4bee060d8891" + resolved "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.0.tgz" integrity sha512-+n8dL/9GWblDO0iU6eZAwEIJVr5DWigtle+Q6HLOrh/pdbXOhOtqzq8VPPE2zvNJzSKY4vH/z3iT3tn0A3ypiQ== dependencies: "@babel/parser" "^7.20.7" @@ -766,14 +766,14 @@ "@types/babel__generator@*": version "7.6.4" - resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.4.tgz#1f20ce4c5b1990b37900b63f050182d28c2439b7" + resolved "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz" integrity sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg== dependencies: "@babel/types" "^7.0.0" "@types/babel__template@*": version "7.4.1" - resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.4.1.tgz#3d1a48fd9d6c0edfd56f2ff578daed48f36c8969" + resolved "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz" integrity sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g== dependencies: "@babel/parser" "^7.1.0" @@ -781,131 +781,128 @@ "@types/babel__traverse@*", "@types/babel__traverse@^7.0.6": version "7.18.3" - resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.18.3.tgz#dfc508a85781e5698d5b33443416b6268c4b3e8d" + resolved "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.18.3.tgz" integrity sha512-1kbcJ40lLB7MHsj39U4Sh1uTd2E7rLEa79kmDpI6cy+XiXsteB3POdQomoq4FxszMrO3ZYchkhYJw7A2862b3w== dependencies: "@babel/types" "^7.3.0" "@types/graceful-fs@^4.1.3": version "4.1.6" - resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.6.tgz#e14b2576a1c25026b7f02ede1de3b84c3a1efeae" + resolved "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.6.tgz" integrity sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw== dependencies: "@types/node" "*" "@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1": version "2.0.4" - resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz#8467d4b3c087805d63580480890791277ce35c44" + resolved "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz" integrity sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g== "@types/istanbul-lib-report@*": version "3.0.0" - resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#c14c24f18ea8190c118ee7562b7ff99a36552686" + resolved "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz" integrity sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg== dependencies: "@types/istanbul-lib-coverage" "*" "@types/istanbul-reports@^3.0.0": version "3.0.1" - resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz#9153fe98bba2bd565a63add9436d6f0d7f8468ff" + resolved "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz" integrity sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw== dependencies: "@types/istanbul-lib-report" "*" -"@types/jest@^29.2.4": - version "29.4.0" - resolved "https://registry.yarnpkg.com/@types/jest/-/jest-29.4.0.tgz#a8444ad1704493e84dbf07bb05990b275b3b9206" - integrity sha512-VaywcGQ9tPorCX/Jkkni7RWGFfI11whqzs8dvxF41P17Z+z872thvEvlIbznjPJ02kl1HMX3LmLOonsj2n7HeQ== +"@types/jest@^29.5.3": + version "29.5.5" + resolved "https://registry.npmjs.org/@types/jest/-/jest-29.5.5.tgz" + integrity sha512-ebylz2hnsWR9mYvmBFbXJXr+33UPc4+ZdxyDXh5w0FlPBTfCVN3wPL+kuOiQt3xvrK419v7XWeAs+AeOksafXg== dependencies: expect "^29.0.0" pretty-format "^29.0.0" "@types/long@^4.0.1": version "4.0.2" - resolved "https://registry.yarnpkg.com/@types/long/-/long-4.0.2.tgz#b74129719fc8d11c01868010082d483b7545591a" + resolved "https://registry.npmjs.org/@types/long/-/long-4.0.2.tgz" integrity sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA== -"@types/node@*", "@types/node@>=13.7.0", "@types/node@^18.11.14": - version "18.14.0" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.14.0.tgz#94c47b9217bbac49d4a67a967fdcdeed89ebb7d0" - integrity sha512-5EWrvLmglK+imbCJY0+INViFWUHg1AHel1sq4ZVSfdcNqGy9Edv3UB9IIzzg+xPaUcAgZYcfVs2fBcwDeZzU0A== - -"@types/prettier@^2.1.5": - version "2.7.2" - resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.7.2.tgz#6c2324641cc4ba050a8c710b2b251b377581fbf0" - integrity sha512-KufADq8uQqo1pYKVIYzfKbJfBAc0sOeXqGbFaSpv8MRmC/zXgowNZmFcbngndGk922QDmOASEXUZCaY48gs4cg== +"@types/node@*", "@types/node@^20.2.5", "@types/node@>=13.7.0": + version "20.8.6" + resolved "https://registry.npmjs.org/@types/node/-/node-20.8.6.tgz" + integrity sha512-eWO4K2Ji70QzKUqRy6oyJWUeB7+g2cRagT3T/nxYibYcT4y2BDL8lqolRXjTHmkZCdJfIPaY73KbJAZmcryxTQ== + dependencies: + undici-types "~5.25.1" "@types/qs@^6.9.7": version "6.9.7" - resolved "https://registry.yarnpkg.com/@types/qs/-/qs-6.9.7.tgz#63bb7d067db107cc1e457c303bc25d511febf6cb" + resolved "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz" integrity sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw== "@types/stack-utils@^2.0.0": version "2.0.1" - resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.1.tgz#20f18294f797f2209b5f65c8e3b5c8e8261d127c" + resolved "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz" integrity sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw== "@types/yargs-parser@*": version "21.0.0" - resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.0.tgz#0c60e537fa790f5f9472ed2776c2b71ec117351b" + resolved "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz" integrity sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA== "@types/yargs@^17.0.8": version "17.0.22" - resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.22.tgz#7dd37697691b5f17d020f3c63e7a45971ff71e9a" + resolved "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.22.tgz" integrity sha512-pet5WJ9U8yPVRhkwuEIp5ktAeAqRZOq4UdAyWLWzxbtpyXnzbtLdKiXAjJzi/KLmPGS9wk86lUFWZFN6sISo4g== dependencies: "@types/yargs-parser" "*" acorn-walk@^8.1.1: version "8.2.0" - resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1" + resolved "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz" integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA== acorn@^8.4.1: version "8.8.2" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.2.tgz#1b2f25db02af965399b9776b0c2c391276d37c4a" + resolved "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz" integrity sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw== ansi-colors@^4.1.1: version "4.1.3" - resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.3.tgz#37611340eb2243e70cc604cad35d63270d48781b" + resolved "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz" integrity sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw== ansi-escapes@^4.2.1: version "4.3.2" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" + resolved "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz" integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ== dependencies: type-fest "^0.21.3" ansi-regex@^5.0.1: version "5.0.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" + resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz" integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== ansi-styles@^3.2.1: version "3.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz" integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== dependencies: color-convert "^1.9.0" ansi-styles@^4.0.0, ansi-styles@^4.1.0: version "4.3.0" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz" integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== dependencies: color-convert "^2.0.1" ansi-styles@^5.0.0: version "5.2.0" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b" + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz" integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA== anymatch@^3.0.3: version "3.1.3" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" + resolved "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz" integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== dependencies: normalize-path "^3.0.0" @@ -913,44 +910,44 @@ anymatch@^3.0.3: arg@^4.1.0: version "4.1.3" - resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089" + resolved "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz" integrity sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA== arg@^5.0.2: version "5.0.2" - resolved "https://registry.yarnpkg.com/arg/-/arg-5.0.2.tgz#c81433cc427c92c4dcf4865142dbca6f15acd59c" + resolved "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz" integrity sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg== argparse@^1.0.7: version "1.0.10" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" + resolved "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz" integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== dependencies: sprintf-js "~1.0.2" axios@^0.25.0: version "0.25.0" - resolved "https://registry.yarnpkg.com/axios/-/axios-0.25.0.tgz#349cfbb31331a9b4453190791760a8d35b093e0a" + resolved "https://registry.npmjs.org/axios/-/axios-0.25.0.tgz" integrity sha512-cD8FOb0tRH3uuEe6+evtAbgJtfxr7ly3fQjYcMcuPlgkwVS9xboaVIpcDV+cYQe+yGykgwZCs1pzjntcGa6l5g== dependencies: follow-redirects "^1.14.7" -babel-jest@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-29.4.3.tgz#478b84d430972b277ad67dd631be94abea676792" - integrity sha512-o45Wyn32svZE+LnMVWv/Z4x0SwtLbh4FyGcYtR20kIWd+rdrDZ9Fzq8Ml3MYLD+mZvEdzCjZsCnYZ2jpJyQ+Nw== +babel-jest@^29.0.0, babel-jest@^29.7.0: + version "29.7.0" + resolved "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz" + integrity sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg== dependencies: - "@jest/transform" "^29.4.3" + "@jest/transform" "^29.7.0" "@types/babel__core" "^7.1.14" babel-plugin-istanbul "^6.1.1" - babel-preset-jest "^29.4.3" + babel-preset-jest "^29.6.3" chalk "^4.0.0" graceful-fs "^4.2.9" slash "^3.0.0" babel-plugin-istanbul@^6.1.1: version "6.1.1" - resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz#fa88ec59232fd9b4e36dbbc540a8ec9a9b47da73" + resolved "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz" integrity sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA== dependencies: "@babel/helper-plugin-utils" "^7.0.0" @@ -959,10 +956,10 @@ babel-plugin-istanbul@^6.1.1: istanbul-lib-instrument "^5.0.4" test-exclude "^6.0.0" -babel-plugin-jest-hoist@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.4.3.tgz#ad1dfb5d31940957e00410ef7d9b2aa94b216101" - integrity sha512-mB6q2q3oahKphy5V7CpnNqZOCkxxZ9aokf1eh82Dy3jQmg4xvM1tGrh5y6BQUJh4a3Pj9+eLfwvAZ7VNKg7H8Q== +babel-plugin-jest-hoist@^29.6.3: + version "29.6.3" + resolved "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz" + integrity sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg== dependencies: "@babel/template" "^7.3.3" "@babel/types" "^7.3.3" @@ -971,7 +968,7 @@ babel-plugin-jest-hoist@^29.4.3: babel-preset-current-node-syntax@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz#b4399239b89b2a011f9ddbe3e4f401fc40cff73b" + 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== dependencies: "@babel/plugin-syntax-async-generators" "^7.8.4" @@ -987,32 +984,32 @@ babel-preset-current-node-syntax@^1.0.0: "@babel/plugin-syntax-optional-chaining" "^7.8.3" "@babel/plugin-syntax-top-level-await" "^7.8.3" -babel-preset-jest@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-29.4.3.tgz#bb926b66ae253b69c6e3ef87511b8bb5c53c5b52" - integrity sha512-gWx6COtSuma6n9bw+8/F+2PCXrIgxV/D1TJFnp6OyBK2cxPWg0K9p/sriNYeifKjpUkMViWQ09DSWtzJQRETsw== +babel-preset-jest@^29.6.3: + version "29.6.3" + resolved "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz" + integrity sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA== dependencies: - babel-plugin-jest-hoist "^29.4.3" + babel-plugin-jest-hoist "^29.6.3" babel-preset-current-node-syntax "^1.0.0" balanced-match@^1.0.0: version "1.0.2" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" + resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz" integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== base64-js@^1.3.1: version "1.5.1" - resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" + resolved "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz" integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== base64url@^3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/base64url/-/base64url-3.0.1.tgz#6399d572e2bc3f90a9a8b22d5dbb0a32d33f788d" + resolved "https://registry.npmjs.org/base64url/-/base64url-3.0.1.tgz" integrity sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A== bl@^5.0.0: version "5.1.0" - resolved "https://registry.yarnpkg.com/bl/-/bl-5.1.0.tgz#183715f678c7188ecef9fe475d90209400624273" + resolved "https://registry.npmjs.org/bl/-/bl-5.1.0.tgz" integrity sha512-tv1ZJHLfTDnXE6tMHv73YgSJaWR2AFuPwMntBe7XL/GBFHnT0CLnsHMogfk5+GzCDC5ZWarSCYaIGATZt9dNsQ== dependencies: buffer "^6.0.3" @@ -1021,7 +1018,7 @@ bl@^5.0.0: blockstore-core@1.0.5: version "1.0.5" - resolved "https://registry.yarnpkg.com/blockstore-core/-/blockstore-core-1.0.5.tgz#2e34b6a7faae0d4b6c98dc8573c6f998eb457f36" + resolved "https://registry.npmjs.org/blockstore-core/-/blockstore-core-1.0.5.tgz" integrity sha512-i/9CUMMvBALVbtSqUIuiWB3tk//a4Q2I2CEWiBuYNnhJvk/DWplXjLt8Sqc5VGkRVXVPSsEuH8fUtqJt5UFYcA== dependencies: err-code "^3.0.1" @@ -1035,7 +1032,7 @@ blockstore-core@1.0.5: brace-expansion@^1.1.7: version "1.1.11" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz" integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== dependencies: balanced-match "^1.0.0" @@ -1043,14 +1040,14 @@ brace-expansion@^1.1.7: braces@^3.0.2: version "3.0.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" + resolved "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz" integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== dependencies: fill-range "^7.0.1" -browserslist@^4.21.3: +browserslist@^4.21.3, "browserslist@>= 4.21.0": version "4.21.5" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.5.tgz#75c5dae60063ee641f977e00edd3cfb2fb7af6a7" + resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz" integrity sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w== dependencies: caniuse-lite "^1.0.30001449" @@ -1060,26 +1057,26 @@ browserslist@^4.21.3: bs-logger@0.x: version "0.2.6" - resolved "https://registry.yarnpkg.com/bs-logger/-/bs-logger-0.2.6.tgz#eb7d365307a72cf974cc6cda76b68354ad336bd8" + resolved "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz" integrity sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog== dependencies: fast-json-stable-stringify "2.x" bser@2.1.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05" + resolved "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz" integrity sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ== dependencies: node-int64 "^0.4.0" buffer-from@^1.0.0: version "1.1.2" - resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" + resolved "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz" integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== buffer@^6.0.3: version "6.0.3" - resolved "https://registry.yarnpkg.com/buffer/-/buffer-6.0.3.tgz#2ace578459cc8fbe2a70aaa8f52ee63b6a74c6c6" + resolved "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz" integrity sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA== dependencies: base64-js "^1.3.1" @@ -1087,7 +1084,7 @@ buffer@^6.0.3: call-bind@^1.0.0: version "1.0.2" - resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c" + resolved "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz" integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA== dependencies: function-bind "^1.1.1" @@ -1095,12 +1092,12 @@ call-bind@^1.0.0: callsites@^3.0.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" + resolved "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz" integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== camel-case@^4.1.2: version "4.1.2" - resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-4.1.2.tgz#9728072a954f805228225a6deea6b38461e1bd5a" + resolved "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz" integrity sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw== dependencies: pascal-case "^3.1.2" @@ -1108,22 +1105,22 @@ camel-case@^4.1.2: camelcase@^5.3.1: version "5.3.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" + resolved "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz" integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== camelcase@^6.2.0: version "6.3.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" + resolved "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== caniuse-lite@^1.0.30001449: version "1.0.30001457" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001457.tgz#6af34bb5d720074e2099432aa522c21555a18301" + resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001457.tgz" integrity sha512-SDIV6bgE1aVbK6XyxdURbUE89zY7+k1BBBaOwYwkNCglXlel/E7mELiHC64HQ+W0xSKlqWhV9Wh7iHxUjMs4fA== capital-case@^1.0.4: version "1.0.4" - resolved "https://registry.yarnpkg.com/capital-case/-/capital-case-1.0.4.tgz#9d130292353c9249f6b00fa5852bee38a717e669" + resolved "https://registry.npmjs.org/capital-case/-/capital-case-1.0.4.tgz" integrity sha512-ds37W8CytHgwnhGGTi88pcPyR15qoNkOpYwmMMfnWqqWgESapLqvDx6huFjQ5vqWSn2Z06173XNA7LtMOeUh1A== dependencies: no-case "^3.0.4" @@ -1132,7 +1129,7 @@ capital-case@^1.0.4: chalk@^2.0.0: version "2.4.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + resolved "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== dependencies: ansi-styles "^3.2.1" @@ -1141,7 +1138,7 @@ chalk@^2.0.0: chalk@^4.0.0: version "4.1.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" + resolved "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz" integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== dependencies: ansi-styles "^4.1.0" @@ -1149,7 +1146,7 @@ chalk@^4.0.0: change-case@^4.1.2: version "4.1.2" - resolved "https://registry.yarnpkg.com/change-case/-/change-case-4.1.2.tgz#fedfc5f136045e2398c0410ee441f95704641e12" + resolved "https://registry.npmjs.org/change-case/-/change-case-4.1.2.tgz" integrity sha512-bSxY2ws9OtviILG1EiY5K7NNxkqg/JnRnFxLtKQ96JaviiIxi7djMrSd0ECT9AC+lttClmYwKw53BWpOMblo7A== dependencies: camel-case "^4.1.2" @@ -1167,22 +1164,22 @@ change-case@^4.1.2: char-regex@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf" + resolved "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz" integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw== ci-info@^3.2.0: version "3.8.0" - resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.8.0.tgz#81408265a5380c929f0bc665d62256628ce9ef91" + resolved "https://registry.npmjs.org/ci-info/-/ci-info-3.8.0.tgz" integrity sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw== cjs-module-lexer@^1.0.0: version "1.2.2" - resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz#9f84ba3244a512f3a54e5277e8eef4c489864e40" + resolved "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz" integrity sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA== cliui@^8.0.1: version "8.0.1" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-8.0.1.tgz#0c04b075db02cbfe60dc8e6cf2f5486b1a3608aa" + resolved "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz" integrity sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ== dependencies: string-width "^4.2.0" @@ -1191,70 +1188,88 @@ cliui@^8.0.1: co@^4.6.0: version "4.6.0" - resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" + resolved "https://registry.npmjs.org/co/-/co-4.6.0.tgz" integrity sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ== collect-v8-coverage@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz#cc2c8e94fc18bbdffe64d6534570c8a673b27f59" + resolved "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz" integrity sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg== color-convert@^1.9.0: version "1.9.3" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" + resolved "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz" integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== dependencies: color-name "1.1.3" color-convert@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + resolved "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz" integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== dependencies: color-name "~1.1.4" -color-name@1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" - integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== - color-name@~1.1.4: version "1.1.4" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" + resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== +color-name@1.1.3: + version "1.1.3" + resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" + integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== + concat-map@0.0.1: version "0.0.1" - resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== constant-case@^3.0.4: version "3.0.4" - resolved "https://registry.yarnpkg.com/constant-case/-/constant-case-3.0.4.tgz#3b84a9aeaf4cf31ec45e6bf5de91bdfb0589faf1" + resolved "https://registry.npmjs.org/constant-case/-/constant-case-3.0.4.tgz" integrity sha512-I2hSBi7Vvs7BEuJDr5dDHfzb/Ruj3FyvFyh7KLilAjNQw3Be+xgqUBA2W6scVEcL0hL1dwPRtIqEPVUCKkSsyQ== dependencies: no-case "^3.0.4" tslib "^2.0.3" upper-case "^2.0.2" -convert-source-map@^1.6.0, convert-source-map@^1.7.0: +convert-source-map@^1.6.0: version "1.9.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f" + resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz" + integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A== + +convert-source-map@^1.7.0: + version "1.9.0" + resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz" integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A== convert-source-map@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" + resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz" integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== +create-jest@^29.7.0: + version "29.7.0" + resolved "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz" + integrity sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q== + dependencies: + "@jest/types" "^29.6.3" + chalk "^4.0.0" + exit "^0.1.2" + graceful-fs "^4.2.9" + jest-config "^29.7.0" + jest-util "^29.7.0" + prompts "^2.0.1" + create-require@^1.1.0: version "1.1.1" - resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333" + resolved "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz" integrity sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ== cross-spawn@^7.0.3: version "7.0.3" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" + resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz" integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== dependencies: path-key "^3.1.0" @@ -1263,49 +1278,49 @@ cross-spawn@^7.0.3: dataloader@^2.0.0: version "2.2.2" - resolved "https://registry.yarnpkg.com/dataloader/-/dataloader-2.2.2.tgz#216dc509b5abe39d43a9b9d97e6e5e473dfbe3e0" + resolved "https://registry.npmjs.org/dataloader/-/dataloader-2.2.2.tgz" integrity sha512-8YnDaaf7N3k/q5HnTJVuzSyLETjoZjVmHc4AeKAzOvKHEFQKcn64OKBfzHYtE9zGjctNM7V9I0MfnUVLpi7M5g== debug@^4.1.0, debug@^4.1.1, debug@^4.3.1: version "4.3.4" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" + resolved "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz" integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== dependencies: ms "2.1.2" -dedent@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" - integrity sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA== +dedent@^1.0.0: + version "1.5.1" + resolved "https://registry.npmjs.org/dedent/-/dedent-1.5.1.tgz" + integrity sha512-+LxW+KLWxu3HW3M2w2ympwtqPrqYRzU8fqi6Fhd18fBALe15blJPI/I4+UHveMVG6lJqB4JNd4UG0S5cnVHwIg== deepmerge@^4.2.2: version "4.3.0" - resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.3.0.tgz#65491893ec47756d44719ae520e0e2609233b59b" + resolved "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.0.tgz" integrity sha512-z2wJZXrmeHdvYJp/Ux55wIjqo81G5Bp4c+oELTW+7ar6SogWHajt5a9gO3s3IDaGSAXjDk0vlQKN3rms8ab3og== define-lazy-prop@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz#3f7ae421129bcaaac9bc74905c98a0009ec9ee7f" + resolved "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz" integrity sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og== detect-newline@^3.0.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" + resolved "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz" integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== -diff-sequences@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-29.4.3.tgz#9314bc1fabe09267ffeca9cbafc457d8499a13f2" - integrity sha512-ofrBgwpPhCD85kMKtE9RYFFq6OC1A89oW2vvgWZNCwxrUpRUILopY7lsYyMDSjc8g6U6aiO0Qubg6r4Wgt5ZnA== +diff-sequences@^29.6.3: + version "29.6.3" + resolved "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz" + integrity sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q== diff@^4.0.1: version "4.0.2" - resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d" + resolved "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz" integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A== dot-case@^3.0.4: version "3.0.4" - resolved "https://registry.yarnpkg.com/dot-case/-/dot-case-3.0.4.tgz#9b2b670d00a431667a8a75ba29cd1b98809ce751" + resolved "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz" integrity sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w== dependencies: no-case "^3.0.4" @@ -1313,66 +1328,66 @@ dot-case@^3.0.4: dotenv@^16.3.1: version "16.3.1" - resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-16.3.1.tgz#369034de7d7e5b120972693352a3bf112172cc3e" + resolved "https://registry.npmjs.org/dotenv/-/dotenv-16.3.1.tgz" integrity sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ== electron-to-chromium@^1.4.284: version "1.4.305" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.305.tgz#e4dfe3e06ab783f33171f9bde9e8ed092510fcd0" + resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.305.tgz" integrity sha512-WETy6tG0CT5gm1O+xCbyapWNsCcmIvrn4NHViIGYo2AT8FV2qUCXdaB+WqYxSv/vS5mFqhBYnfZAAkVArjBmUg== emittery@^0.13.1: version "0.13.1" - resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.13.1.tgz#c04b8c3457490e0847ae51fced3af52d338e3dad" + resolved "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz" integrity sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ== emoji-regex@^8.0.0: version "8.0.0" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" + resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz" integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== enquirer@^2.3.6: version "2.3.6" - resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d" + resolved "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz" integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== dependencies: ansi-colors "^4.1.1" err-code@^3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/err-code/-/err-code-3.0.1.tgz#a444c7b992705f2b120ee320b09972eef331c920" + resolved "https://registry.npmjs.org/err-code/-/err-code-3.0.1.tgz" integrity sha512-GiaH0KJUewYok+eeY05IIgjtAe4Yltygk9Wqp1V5yVWLdhf0hYZchRjNIT9bb0mSwRcIusT3cx7PJUf3zEIfUA== error-ex@^1.3.1: version "1.3.2" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" + resolved "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz" integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== dependencies: is-arrayish "^0.2.1" escalade@^3.1.1: version "3.1.1" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" + resolved "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz" integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== escape-string-regexp@^1.0.5: version "1.0.5" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== escape-string-regexp@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" + resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz" integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== esprima@^4.0.0: version "4.0.1" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" + resolved "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz" integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== execa@^5.0.0: version "5.1.1" - resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" + resolved "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz" integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg== dependencies: cross-spawn "^7.0.3" @@ -1387,42 +1402,42 @@ execa@^5.0.0: exit@^0.1.2: version "0.1.2" - resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" + resolved "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz" integrity sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ== -expect@^29.0.0, expect@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/expect/-/expect-29.4.3.tgz#5e47757316df744fe3b8926c3ae8a3ebdafff7fe" - integrity sha512-uC05+Q7eXECFpgDrHdXA4k2rpMyStAYPItEDLyQDo5Ta7fVkJnNA/4zh/OIVkVVNZ1oOK1PipQoyNjuZ6sz6Dg== +expect@^29.0.0, expect@^29.7.0: + version "29.7.0" + resolved "https://registry.npmjs.org/expect/-/expect-29.7.0.tgz" + integrity sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw== dependencies: - "@jest/expect-utils" "^29.4.3" - jest-get-type "^29.4.3" - jest-matcher-utils "^29.4.3" - jest-message-util "^29.4.3" - jest-util "^29.4.3" + "@jest/expect-utils" "^29.7.0" + jest-get-type "^29.6.3" + jest-matcher-utils "^29.7.0" + jest-message-util "^29.7.0" + jest-util "^29.7.0" -fast-json-stable-stringify@2.x, fast-json-stable-stringify@^2.1.0: +fast-json-stable-stringify@^2.1.0, fast-json-stable-stringify@2.x: version "2.1.0" - resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" + resolved "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz" integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== fb-watchman@^2.0.0: version "2.0.2" - resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.2.tgz#e9524ee6b5c77e9e5001af0f85f3adbb8623255c" + resolved "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz" integrity sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA== dependencies: bser "2.1.1" fill-range@^7.0.1: version "7.0.1" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" + resolved "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz" integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== dependencies: to-regex-range "^5.0.1" find-up@^4.0.0, find-up@^4.1.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" + resolved "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz" integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== dependencies: locate-path "^5.0.0" @@ -1430,37 +1445,32 @@ find-up@^4.0.0, find-up@^4.1.0: follow-redirects@^1.14.7: version "1.15.2" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.2.tgz#b460864144ba63f2681096f274c4e57026da2c13" + resolved "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz" integrity sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA== fs.realpath@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz" integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== -fsevents@^2.3.2: - version "2.3.2" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" - integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== - function-bind@^1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" + resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz" integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== gensync@^1.0.0-beta.2: version "1.0.0-beta.2" - resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" + resolved "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz" integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== get-caller-file@^2.0.5: version "2.0.5" - resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" + resolved "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== get-intrinsic@^1.0.2: version "1.2.0" - resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.0.tgz#7ad1dc0535f3a2904bba075772763e5051f6d05f" + resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz" integrity sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q== dependencies: function-bind "^1.1.1" @@ -1469,17 +1479,17 @@ get-intrinsic@^1.0.2: get-package-type@^0.1.0: version "0.1.0" - resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" + resolved "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz" integrity sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q== get-stream@^6.0.0: version "6.0.1" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" + resolved "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz" integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== glob@^7.1.3, glob@^7.1.4: version "7.2.3" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" + resolved "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz" integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== dependencies: fs.realpath "^1.0.0" @@ -1491,17 +1501,17 @@ glob@^7.1.3, glob@^7.1.4: globals@^11.1.0: version "11.12.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" + resolved "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz" integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== graceful-fs@^4.2.9: version "4.2.10" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c" + resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz" integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA== hamt-sharding@^2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/hamt-sharding/-/hamt-sharding-2.0.1.tgz#f45686d0339e74b03b233bee1bde9587727129b6" + resolved "https://registry.npmjs.org/hamt-sharding/-/hamt-sharding-2.0.1.tgz" integrity sha512-vnjrmdXG9dDs1m/H4iJ6z0JFI2NtgsW5keRkTcM85NGak69Mkf5PHUqBz+Xs0T4sg0ppvj9O5EGAJo40FTxmmA== dependencies: sparse-array "^1.3.1" @@ -1509,29 +1519,29 @@ hamt-sharding@^2.0.0: has-flag@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" + resolved "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz" integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== has-flag@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" + resolved "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== has-symbols@^1.0.3: version "1.0.3" - resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" + resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz" integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== has@^1.0.3: version "1.0.3" - resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" + resolved "https://registry.npmjs.org/has/-/has-1.0.3.tgz" integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== dependencies: function-bind "^1.1.1" header-case@^2.0.4: version "2.0.4" - resolved "https://registry.yarnpkg.com/header-case/-/header-case-2.0.4.tgz#5a42e63b55177349cf405beb8d775acabb92c063" + resolved "https://registry.npmjs.org/header-case/-/header-case-2.0.4.tgz" integrity sha512-H/vuk5TEEVZwrR0lp2zed9OCo1uAILMlx0JEMgC26rzyJJ3N1v6XkwHHXJQdR2doSjcGPM6OKPYoJgf0plJ11Q== dependencies: capital-case "^1.0.4" @@ -1539,22 +1549,22 @@ header-case@^2.0.4: html-escaper@^2.0.0: version "2.0.2" - resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" + resolved "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz" integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== human-signals@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" + resolved "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz" integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== ieee754@^1.2.1: version "1.2.1" - resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" + resolved "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz" integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== import-local@^3.0.2: version "3.1.0" - resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.1.0.tgz#b4479df8a5fd44f6cdce24070675676063c95cb4" + resolved "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz" integrity sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg== dependencies: pkg-dir "^4.2.0" @@ -1562,25 +1572,25 @@ import-local@^3.0.2: imurmurhash@^0.1.4: version "0.1.4" - resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz" integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA== inflight@^1.0.4: version "1.0.6" - resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz" integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== dependencies: once "^1.3.0" wrappy "1" -inherits@2, inherits@^2.0.3, inherits@^2.0.4: +inherits@^2.0.3, inherits@^2.0.4, inherits@2: version "2.0.4" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== interface-blockstore@^2.0.2, interface-blockstore@^2.0.3: version "2.0.3" - resolved "https://registry.yarnpkg.com/interface-blockstore/-/interface-blockstore-2.0.3.tgz#b85270eb5180e65e46c9f66980a0fa4d98f5d73e" + resolved "https://registry.npmjs.org/interface-blockstore/-/interface-blockstore-2.0.3.tgz" integrity sha512-OwVUnlNcx7H5HloK0Myv6c/C1q9cNG11HX6afdeU6q6kbuNj8jKCwVnmJHhC94LZaJ+9hvVOk4IUstb3Esg81w== dependencies: interface-store "^2.0.2" @@ -1588,12 +1598,12 @@ interface-blockstore@^2.0.2, interface-blockstore@^2.0.3: interface-store@^2.0.1, interface-store@^2.0.2: version "2.0.2" - resolved "https://registry.yarnpkg.com/interface-store/-/interface-store-2.0.2.tgz#83175fd2b0c501585ed96db54bb8ba9d55fce34c" + resolved "https://registry.npmjs.org/interface-store/-/interface-store-2.0.2.tgz" integrity sha512-rScRlhDcz6k199EkHqT8NpM87ebN89ICOzILoBHgaG36/WX50N32BnU/kpZgCGPLhARRAWUUX5/cyaIjt7Kipg== ipfs-unixfs-importer@9.0.10: version "9.0.10" - resolved "https://registry.yarnpkg.com/ipfs-unixfs-importer/-/ipfs-unixfs-importer-9.0.10.tgz#2527ea0b4e018a9e80fa981101485babcd05c494" + resolved "https://registry.npmjs.org/ipfs-unixfs-importer/-/ipfs-unixfs-importer-9.0.10.tgz" integrity sha512-W+tQTVcSmXtFh7FWYWwPBGXJ1xDgREbIyI1E5JzDcimZLIyT5gGMfxR3oKPxxWj+GKMpP5ilvMQrbsPzWcm3Fw== dependencies: "@ipld/dag-pb" "^2.0.2" @@ -1614,7 +1624,7 @@ ipfs-unixfs-importer@9.0.10: ipfs-unixfs@^6.0.0: version "6.0.9" - resolved "https://registry.yarnpkg.com/ipfs-unixfs/-/ipfs-unixfs-6.0.9.tgz#f6613b8e081d83faa43ed96e016a694c615a9374" + resolved "https://registry.npmjs.org/ipfs-unixfs/-/ipfs-unixfs-6.0.9.tgz" integrity sha512-0DQ7p0/9dRB6XCb0mVCTli33GzIzSVx5udpJuVM47tGcD+W+Bl4LsnoLswd3ggNnNEakMv1FdoFITiEnchXDqQ== dependencies: err-code "^3.0.1" @@ -1622,66 +1632,66 @@ ipfs-unixfs@^6.0.0: is-arrayish@^0.2.1: version "0.2.1" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" + resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz" integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== is-core-module@^2.9.0: version "2.11.0" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.11.0.tgz#ad4cb3e3863e814523c96f3f58d26cc570ff0144" + resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz" integrity sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw== dependencies: has "^1.0.3" is-docker@^2.0.0, is-docker@^2.1.1: version "2.2.1" - resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" + resolved "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz" integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ== is-fullwidth-code-point@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" + resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz" integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== is-generator-fn@^2.0.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118" + resolved "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz" integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ== is-number@^7.0.0: version "7.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" + resolved "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz" integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== is-plain-obj@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287" + resolved "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz" integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA== is-stream@^2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" + resolved "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz" integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== is-wsl@^2.2.0: version "2.2.0" - resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271" + resolved "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz" integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww== dependencies: is-docker "^2.0.0" isexe@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz" integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0: version "3.2.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3" + resolved "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz" integrity sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw== -istanbul-lib-instrument@^5.0.4, istanbul-lib-instrument@^5.1.0: +istanbul-lib-instrument@^5.0.4: version "5.2.1" - resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz#d10c8885c2125574e1c231cacadf955675e1ce3d" + resolved "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz" integrity sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg== dependencies: "@babel/core" "^7.12.3" @@ -1690,9 +1700,20 @@ istanbul-lib-instrument@^5.0.4, istanbul-lib-instrument@^5.1.0: istanbul-lib-coverage "^3.2.0" semver "^6.3.0" +istanbul-lib-instrument@^6.0.0: + version "6.0.1" + resolved "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.1.tgz" + integrity sha512-EAMEJBsYuyyztxMxW3g7ugGPkrZsV57v0Hmv3mm1uQsmB+QnZuepg731CRaIgeUVSdmsTngOkSnauNF8p7FIhA== + dependencies: + "@babel/core" "^7.12.3" + "@babel/parser" "^7.14.7" + "@istanbuljs/schema" "^0.1.2" + istanbul-lib-coverage "^3.2.0" + semver "^7.5.4" + istanbul-lib-report@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#7518fe52ea44de372f460a76b5ecda9ffb73d8a6" + resolved "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz" integrity sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw== dependencies: istanbul-lib-coverage "^3.0.0" @@ -1701,7 +1722,7 @@ istanbul-lib-report@^3.0.0: istanbul-lib-source-maps@^4.0.0: version "4.0.1" - resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz#895f3a709fcfba34c6de5a42939022f3e4358551" + resolved "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz" integrity sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw== dependencies: debug "^4.1.1" @@ -1710,7 +1731,7 @@ istanbul-lib-source-maps@^4.0.0: istanbul-reports@^3.1.3: version "3.1.5" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.5.tgz#cc9a6ab25cb25659810e4785ed9d9fb742578bae" + resolved "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz" integrity sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w== dependencies: html-escaper "^2.0.0" @@ -1718,410 +1739,407 @@ istanbul-reports@^3.1.3: it-all@^1.0.4, it-all@^1.0.5: version "1.0.6" - resolved "https://registry.yarnpkg.com/it-all/-/it-all-1.0.6.tgz#852557355367606295c4c3b7eff0136f07749335" + resolved "https://registry.npmjs.org/it-all/-/it-all-1.0.6.tgz" integrity sha512-3cmCc6Heqe3uWi3CVM/k51fa/XbMFpQVzFoDsV0IZNHSQDyAXl3c4MjHkFX5kF3922OGj7Myv1nSEUgRtcuM1A== it-batch@^1.0.8, it-batch@^1.0.9: version "1.0.9" - resolved "https://registry.yarnpkg.com/it-batch/-/it-batch-1.0.9.tgz#7e95aaacb3f9b1b8ca6c8b8367892171d6a5b37f" + resolved "https://registry.npmjs.org/it-batch/-/it-batch-1.0.9.tgz" integrity sha512-7Q7HXewMhNFltTsAMdSz6luNhyhkhEtGGbYek/8Xb/GiqYMtwUmopE1ocPSiJKKp3rM4Dt045sNFoUu+KZGNyA== it-drain@^1.0.4: version "1.0.5" - resolved "https://registry.yarnpkg.com/it-drain/-/it-drain-1.0.5.tgz#0466d4e286b37bcd32599d4e99b37a87cb8cfdf6" + resolved "https://registry.npmjs.org/it-drain/-/it-drain-1.0.5.tgz" integrity sha512-r/GjkiW1bZswC04TNmUnLxa6uovme7KKwPhc+cb1hHU65E3AByypHH6Pm91WHuvqfFsm+9ws0kPtDBV3/8vmIg== it-filter@^1.0.2: version "1.0.3" - resolved "https://registry.yarnpkg.com/it-filter/-/it-filter-1.0.3.tgz#66ea0cc4bf84af71bebd353c05a9c5735fcba751" + resolved "https://registry.npmjs.org/it-filter/-/it-filter-1.0.3.tgz" integrity sha512-EI3HpzUrKjTH01miLHWmhNWy3Xpbx4OXMXltgrNprL5lDpF3giVpHIouFpr5l+evXw6aOfxhnt01BIB+4VQA+w== it-first@^1.0.6: version "1.0.7" - resolved "https://registry.yarnpkg.com/it-first/-/it-first-1.0.7.tgz#a4bef40da8be21667f7d23e44dae652f5ccd7ab1" + resolved "https://registry.npmjs.org/it-first/-/it-first-1.0.7.tgz" integrity sha512-nvJKZoBpZD/6Rtde6FXqwDqDZGF1sCADmr2Zoc0hZsIvnE449gRFnGctxDf09Bzc/FWnHXAdaHVIetY6lrE0/g== it-parallel-batch@^1.0.9: version "1.0.11" - resolved "https://registry.yarnpkg.com/it-parallel-batch/-/it-parallel-batch-1.0.11.tgz#f889b4e1c7a62ef24111dbafbaaa010b33d00f69" + resolved "https://registry.npmjs.org/it-parallel-batch/-/it-parallel-batch-1.0.11.tgz" integrity sha512-UWsWHv/kqBpMRmyZJzlmZeoAMA0F3SZr08FBdbhtbe+MtoEBgr/ZUAKrnenhXCBrsopy76QjRH2K/V8kNdupbQ== dependencies: it-batch "^1.0.9" it-take@^1.0.1: version "1.0.2" - resolved "https://registry.yarnpkg.com/it-take/-/it-take-1.0.2.tgz#b5f1570014db7c3454897898b69bb7ac9c3bffc1" + resolved "https://registry.npmjs.org/it-take/-/it-take-1.0.2.tgz" integrity sha512-u7I6qhhxH7pSevcYNaMECtkvZW365ARqAIt9K+xjdK1B2WUDEjQSfETkOCT8bxFq/59LqrN3cMLUtTgmDBaygw== -jest-changed-files@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-29.4.3.tgz#7961fe32536b9b6d5c28dfa0abcfab31abcf50a7" - integrity sha512-Vn5cLuWuwmi2GNNbokPOEcvrXGSGrqVnPEZV7rC6P7ck07Dyw9RFnvWglnupSh+hGys0ajGtw/bc2ZgweljQoQ== +jest-changed-files@^29.7.0: + version "29.7.0" + resolved "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.7.0.tgz" + integrity sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w== dependencies: execa "^5.0.0" + jest-util "^29.7.0" p-limit "^3.1.0" -jest-circus@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-29.4.3.tgz#fff7be1cf5f06224dd36a857d52a9efeb005ba04" - integrity sha512-Vw/bVvcexmdJ7MLmgdT3ZjkJ3LKu8IlpefYokxiqoZy6OCQ2VAm6Vk3t/qHiAGUXbdbJKJWnc8gH3ypTbB/OBw== +jest-circus@^29.7.0: + version "29.7.0" + resolved "https://registry.npmjs.org/jest-circus/-/jest-circus-29.7.0.tgz" + integrity sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw== dependencies: - "@jest/environment" "^29.4.3" - "@jest/expect" "^29.4.3" - "@jest/test-result" "^29.4.3" - "@jest/types" "^29.4.3" + "@jest/environment" "^29.7.0" + "@jest/expect" "^29.7.0" + "@jest/test-result" "^29.7.0" + "@jest/types" "^29.6.3" "@types/node" "*" chalk "^4.0.0" co "^4.6.0" - dedent "^0.7.0" + dedent "^1.0.0" is-generator-fn "^2.0.0" - jest-each "^29.4.3" - jest-matcher-utils "^29.4.3" - jest-message-util "^29.4.3" - jest-runtime "^29.4.3" - jest-snapshot "^29.4.3" - jest-util "^29.4.3" + jest-each "^29.7.0" + jest-matcher-utils "^29.7.0" + jest-message-util "^29.7.0" + jest-runtime "^29.7.0" + jest-snapshot "^29.7.0" + jest-util "^29.7.0" p-limit "^3.1.0" - pretty-format "^29.4.3" + pretty-format "^29.7.0" + pure-rand "^6.0.0" slash "^3.0.0" stack-utils "^2.0.3" -jest-cli@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-29.4.3.tgz#fe31fdd0c90c765f392b8b7c97e4845071cd2163" - integrity sha512-PiiAPuFNfWWolCE6t3ZrDXQc6OsAuM3/tVW0u27UWc1KE+n/HSn5dSE6B2juqN7WP+PP0jAcnKtGmI4u8GMYCg== +jest-cli@^29.7.0: + version "29.7.0" + resolved "https://registry.npmjs.org/jest-cli/-/jest-cli-29.7.0.tgz" + integrity sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg== dependencies: - "@jest/core" "^29.4.3" - "@jest/test-result" "^29.4.3" - "@jest/types" "^29.4.3" + "@jest/core" "^29.7.0" + "@jest/test-result" "^29.7.0" + "@jest/types" "^29.6.3" chalk "^4.0.0" + create-jest "^29.7.0" exit "^0.1.2" - graceful-fs "^4.2.9" import-local "^3.0.2" - jest-config "^29.4.3" - jest-util "^29.4.3" - jest-validate "^29.4.3" - prompts "^2.0.1" + jest-config "^29.7.0" + jest-util "^29.7.0" + jest-validate "^29.7.0" yargs "^17.3.1" -jest-config@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-29.4.3.tgz#fca9cdfe6298ae6d04beef1624064d455347c978" - integrity sha512-eCIpqhGnIjdUCXGtLhz4gdDoxKSWXKjzNcc5r+0S1GKOp2fwOipx5mRcwa9GB/ArsxJ1jlj2lmlD9bZAsBxaWQ== +jest-config@^29.7.0: + version "29.7.0" + resolved "https://registry.npmjs.org/jest-config/-/jest-config-29.7.0.tgz" + integrity sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ== dependencies: "@babel/core" "^7.11.6" - "@jest/test-sequencer" "^29.4.3" - "@jest/types" "^29.4.3" - babel-jest "^29.4.3" + "@jest/test-sequencer" "^29.7.0" + "@jest/types" "^29.6.3" + babel-jest "^29.7.0" chalk "^4.0.0" ci-info "^3.2.0" deepmerge "^4.2.2" glob "^7.1.3" graceful-fs "^4.2.9" - jest-circus "^29.4.3" - jest-environment-node "^29.4.3" - jest-get-type "^29.4.3" - jest-regex-util "^29.4.3" - jest-resolve "^29.4.3" - jest-runner "^29.4.3" - jest-util "^29.4.3" - jest-validate "^29.4.3" + jest-circus "^29.7.0" + jest-environment-node "^29.7.0" + jest-get-type "^29.6.3" + jest-regex-util "^29.6.3" + jest-resolve "^29.7.0" + jest-runner "^29.7.0" + jest-util "^29.7.0" + jest-validate "^29.7.0" micromatch "^4.0.4" parse-json "^5.2.0" - pretty-format "^29.4.3" + pretty-format "^29.7.0" slash "^3.0.0" strip-json-comments "^3.1.1" -jest-diff@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-29.4.3.tgz#42f4eb34d0bf8c0fb08b0501069b87e8e84df347" - integrity sha512-YB+ocenx7FZ3T5O9lMVMeLYV4265socJKtkwgk/6YUz/VsEzYDkiMuMhWzZmxm3wDRQvayJu/PjkjjSkjoHsCA== +jest-diff@^29.7.0: + version "29.7.0" + resolved "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz" + integrity sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw== dependencies: chalk "^4.0.0" - diff-sequences "^29.4.3" - jest-get-type "^29.4.3" - pretty-format "^29.4.3" + diff-sequences "^29.6.3" + jest-get-type "^29.6.3" + pretty-format "^29.7.0" -jest-docblock@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-29.4.3.tgz#90505aa89514a1c7dceeac1123df79e414636ea8" - integrity sha512-fzdTftThczeSD9nZ3fzA/4KkHtnmllawWrXO69vtI+L9WjEIuXWs4AmyME7lN5hU7dB0sHhuPfcKofRsUb/2Fg== +jest-docblock@^29.7.0: + version "29.7.0" + resolved "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz" + integrity sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g== dependencies: detect-newline "^3.0.0" -jest-each@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-29.4.3.tgz#a434c199a2f6151c5e3dc80b2d54586bdaa72819" - integrity sha512-1ElHNAnKcbJb/b+L+7j0/w7bDvljw4gTv1wL9fYOczeJrbTbkMGQ5iQPFJ3eFQH19VPTx1IyfePdqSpePKss7Q== +jest-each@^29.7.0: + version "29.7.0" + resolved "https://registry.npmjs.org/jest-each/-/jest-each-29.7.0.tgz" + integrity sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ== dependencies: - "@jest/types" "^29.4.3" + "@jest/types" "^29.6.3" chalk "^4.0.0" - jest-get-type "^29.4.3" - jest-util "^29.4.3" - pretty-format "^29.4.3" - -jest-environment-node@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-29.4.3.tgz#579c4132af478befc1889ddc43c2413a9cdbe014" - integrity sha512-gAiEnSKF104fsGDXNkwk49jD/0N0Bqu2K9+aMQXA6avzsA9H3Fiv1PW2D+gzbOSR705bWd2wJZRFEFpV0tXISg== - dependencies: - "@jest/environment" "^29.4.3" - "@jest/fake-timers" "^29.4.3" - "@jest/types" "^29.4.3" + jest-get-type "^29.6.3" + jest-util "^29.7.0" + pretty-format "^29.7.0" + +jest-environment-node@^29.7.0: + version "29.7.0" + resolved "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz" + integrity sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw== + dependencies: + "@jest/environment" "^29.7.0" + "@jest/fake-timers" "^29.7.0" + "@jest/types" "^29.6.3" "@types/node" "*" - jest-mock "^29.4.3" - jest-util "^29.4.3" + jest-mock "^29.7.0" + jest-util "^29.7.0" -jest-get-type@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-29.4.3.tgz#1ab7a5207c995161100b5187159ca82dd48b3dd5" - integrity sha512-J5Xez4nRRMjk8emnTpWrlkyb9pfRQQanDrvWHhsR1+VUfbwxi30eVcZFlcdGInRibU4G5LwHXpI7IRHU0CY+gg== +jest-get-type@^29.6.3: + version "29.6.3" + resolved "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz" + integrity sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw== -jest-haste-map@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-29.4.3.tgz#085a44283269e7ace0645c63a57af0d2af6942e2" - integrity sha512-eZIgAS8tvm5IZMtKlR8Y+feEOMfo2pSQkmNbufdbMzMSn9nitgGxF1waM/+LbryO3OkMcKS98SUb+j/cQxp/vQ== +jest-haste-map@^29.7.0: + version "29.7.0" + resolved "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz" + integrity sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA== dependencies: - "@jest/types" "^29.4.3" + "@jest/types" "^29.6.3" "@types/graceful-fs" "^4.1.3" "@types/node" "*" anymatch "^3.0.3" fb-watchman "^2.0.0" graceful-fs "^4.2.9" - jest-regex-util "^29.4.3" - jest-util "^29.4.3" - jest-worker "^29.4.3" + jest-regex-util "^29.6.3" + jest-util "^29.7.0" + jest-worker "^29.7.0" micromatch "^4.0.4" walker "^1.0.8" optionalDependencies: fsevents "^2.3.2" -jest-leak-detector@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-29.4.3.tgz#2b35191d6b35aa0256e63a9b79b0f949249cf23a" - integrity sha512-9yw4VC1v2NspMMeV3daQ1yXPNxMgCzwq9BocCwYrRgXe4uaEJPAN0ZK37nFBhcy3cUwEVstFecFLaTHpF7NiGA== +jest-leak-detector@^29.7.0: + version "29.7.0" + resolved "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz" + integrity sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw== dependencies: - jest-get-type "^29.4.3" - pretty-format "^29.4.3" + jest-get-type "^29.6.3" + pretty-format "^29.7.0" -jest-matcher-utils@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-29.4.3.tgz#ea68ebc0568aebea4c4213b99f169ff786df96a0" - integrity sha512-TTciiXEONycZ03h6R6pYiZlSkvYgT0l8aa49z/DLSGYjex4orMUcafuLXYyyEDWB1RKglq00jzwY00Ei7yFNVg== +jest-matcher-utils@^29.7.0: + version "29.7.0" + resolved "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz" + integrity sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g== dependencies: chalk "^4.0.0" - jest-diff "^29.4.3" - jest-get-type "^29.4.3" - pretty-format "^29.4.3" + jest-diff "^29.7.0" + jest-get-type "^29.6.3" + pretty-format "^29.7.0" -jest-message-util@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-29.4.3.tgz#65b5280c0fdc9419503b49d4f48d4999d481cb5b" - integrity sha512-1Y8Zd4ZCN7o/QnWdMmT76If8LuDv23Z1DRovBj/vcSFNlGCJGoO8D1nJDw1AdyAGUk0myDLFGN5RbNeJyCRGCw== +jest-message-util@^29.7.0: + version "29.7.0" + resolved "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz" + integrity sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w== dependencies: "@babel/code-frame" "^7.12.13" - "@jest/types" "^29.4.3" + "@jest/types" "^29.6.3" "@types/stack-utils" "^2.0.0" chalk "^4.0.0" graceful-fs "^4.2.9" micromatch "^4.0.4" - pretty-format "^29.4.3" + pretty-format "^29.7.0" slash "^3.0.0" stack-utils "^2.0.3" -jest-mock@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-29.4.3.tgz#23d84a20a74cdfff0510fdbeefb841ed57b0fe7e" - integrity sha512-LjFgMg+xed9BdkPMyIJh+r3KeHt1klXPJYBULXVVAkbTaaKjPX1o1uVCAZADMEp/kOxGTwy/Ot8XbvgItOrHEg== +jest-mock@^29.7.0: + version "29.7.0" + resolved "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz" + integrity sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw== dependencies: - "@jest/types" "^29.4.3" + "@jest/types" "^29.6.3" "@types/node" "*" - jest-util "^29.4.3" + jest-util "^29.7.0" jest-pnp-resolver@^1.2.2: version "1.2.3" - resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz#930b1546164d4ad5937d5540e711d4d38d4cad2e" + resolved "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz" integrity sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w== -jest-regex-util@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-29.4.3.tgz#a42616141e0cae052cfa32c169945d00c0aa0bb8" - integrity sha512-O4FglZaMmWXbGHSQInfXewIsd1LMn9p3ZXB/6r4FOkyhX2/iP/soMG98jGvk/A3HAN78+5VWcBGO0BJAPRh4kg== +jest-regex-util@^29.6.3: + version "29.6.3" + resolved "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz" + integrity sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg== -jest-resolve-dependencies@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-29.4.3.tgz#9ad7f23839a6d88cef91416bda9393a6e9fd1da5" - integrity sha512-uvKMZAQ3nmXLH7O8WAOhS5l0iWyT3WmnJBdmIHiV5tBbdaDZ1wqtNX04FONGoaFvSOSHBJxnwAVnSn1WHdGVaw== +jest-resolve-dependencies@^29.7.0: + version "29.7.0" + resolved "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz" + integrity sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA== dependencies: - jest-regex-util "^29.4.3" - jest-snapshot "^29.4.3" + jest-regex-util "^29.6.3" + jest-snapshot "^29.7.0" -jest-resolve@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-29.4.3.tgz#3c5b5c984fa8a763edf9b3639700e1c7900538e2" - integrity sha512-GPokE1tzguRyT7dkxBim4wSx6E45S3bOQ7ZdKEG+Qj0Oac9+6AwJPCk0TZh5Vu0xzeX4afpb+eDmgbmZFFwpOw== +jest-resolve@*, jest-resolve@^29.7.0: + version "29.7.0" + resolved "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz" + integrity sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA== dependencies: chalk "^4.0.0" graceful-fs "^4.2.9" - jest-haste-map "^29.4.3" + jest-haste-map "^29.7.0" jest-pnp-resolver "^1.2.2" - jest-util "^29.4.3" - jest-validate "^29.4.3" + jest-util "^29.7.0" + jest-validate "^29.7.0" resolve "^1.20.0" resolve.exports "^2.0.0" slash "^3.0.0" -jest-runner@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-29.4.3.tgz#68dc82c68645eda12bea42b5beece6527d7c1e5e" - integrity sha512-GWPTEiGmtHZv1KKeWlTX9SIFuK19uLXlRQU43ceOQ2hIfA5yPEJC7AMkvFKpdCHx6pNEdOD+2+8zbniEi3v3gA== +jest-runner@^29.7.0: + version "29.7.0" + resolved "https://registry.npmjs.org/jest-runner/-/jest-runner-29.7.0.tgz" + integrity sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ== dependencies: - "@jest/console" "^29.4.3" - "@jest/environment" "^29.4.3" - "@jest/test-result" "^29.4.3" - "@jest/transform" "^29.4.3" - "@jest/types" "^29.4.3" + "@jest/console" "^29.7.0" + "@jest/environment" "^29.7.0" + "@jest/test-result" "^29.7.0" + "@jest/transform" "^29.7.0" + "@jest/types" "^29.6.3" "@types/node" "*" chalk "^4.0.0" emittery "^0.13.1" graceful-fs "^4.2.9" - jest-docblock "^29.4.3" - jest-environment-node "^29.4.3" - jest-haste-map "^29.4.3" - jest-leak-detector "^29.4.3" - jest-message-util "^29.4.3" - jest-resolve "^29.4.3" - jest-runtime "^29.4.3" - jest-util "^29.4.3" - jest-watcher "^29.4.3" - jest-worker "^29.4.3" + jest-docblock "^29.7.0" + jest-environment-node "^29.7.0" + jest-haste-map "^29.7.0" + jest-leak-detector "^29.7.0" + jest-message-util "^29.7.0" + jest-resolve "^29.7.0" + jest-runtime "^29.7.0" + jest-util "^29.7.0" + jest-watcher "^29.7.0" + jest-worker "^29.7.0" p-limit "^3.1.0" source-map-support "0.5.13" -jest-runtime@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-29.4.3.tgz#f25db9874dcf35a3ab27fdaabca426666cc745bf" - integrity sha512-F5bHvxSH+LvLV24vVB3L8K467dt3y3dio6V3W89dUz9nzvTpqd/HcT9zfYKL2aZPvD63vQFgLvaUX/UpUhrP6Q== - dependencies: - "@jest/environment" "^29.4.3" - "@jest/fake-timers" "^29.4.3" - "@jest/globals" "^29.4.3" - "@jest/source-map" "^29.4.3" - "@jest/test-result" "^29.4.3" - "@jest/transform" "^29.4.3" - "@jest/types" "^29.4.3" +jest-runtime@^29.7.0: + version "29.7.0" + resolved "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.7.0.tgz" + integrity sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ== + dependencies: + "@jest/environment" "^29.7.0" + "@jest/fake-timers" "^29.7.0" + "@jest/globals" "^29.7.0" + "@jest/source-map" "^29.6.3" + "@jest/test-result" "^29.7.0" + "@jest/transform" "^29.7.0" + "@jest/types" "^29.6.3" "@types/node" "*" chalk "^4.0.0" cjs-module-lexer "^1.0.0" collect-v8-coverage "^1.0.0" glob "^7.1.3" graceful-fs "^4.2.9" - jest-haste-map "^29.4.3" - jest-message-util "^29.4.3" - jest-mock "^29.4.3" - jest-regex-util "^29.4.3" - jest-resolve "^29.4.3" - jest-snapshot "^29.4.3" - jest-util "^29.4.3" + jest-haste-map "^29.7.0" + jest-message-util "^29.7.0" + jest-mock "^29.7.0" + jest-regex-util "^29.6.3" + jest-resolve "^29.7.0" + jest-snapshot "^29.7.0" + jest-util "^29.7.0" slash "^3.0.0" strip-bom "^4.0.0" -jest-snapshot@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-29.4.3.tgz#183d309371450d9c4a3de7567ed2151eb0e91145" - integrity sha512-NGlsqL0jLPDW91dz304QTM/SNO99lpcSYYAjNiX0Ou+sSGgkanKBcSjCfp/pqmiiO1nQaOyLp6XQddAzRcx3Xw== +jest-snapshot@^29.7.0: + version "29.7.0" + resolved "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.7.0.tgz" + integrity sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw== dependencies: "@babel/core" "^7.11.6" "@babel/generator" "^7.7.2" "@babel/plugin-syntax-jsx" "^7.7.2" "@babel/plugin-syntax-typescript" "^7.7.2" - "@babel/traverse" "^7.7.2" "@babel/types" "^7.3.3" - "@jest/expect-utils" "^29.4.3" - "@jest/transform" "^29.4.3" - "@jest/types" "^29.4.3" - "@types/babel__traverse" "^7.0.6" - "@types/prettier" "^2.1.5" + "@jest/expect-utils" "^29.7.0" + "@jest/transform" "^29.7.0" + "@jest/types" "^29.6.3" babel-preset-current-node-syntax "^1.0.0" chalk "^4.0.0" - expect "^29.4.3" + expect "^29.7.0" graceful-fs "^4.2.9" - jest-diff "^29.4.3" - jest-get-type "^29.4.3" - jest-haste-map "^29.4.3" - jest-matcher-utils "^29.4.3" - jest-message-util "^29.4.3" - jest-util "^29.4.3" + jest-diff "^29.7.0" + jest-get-type "^29.6.3" + jest-matcher-utils "^29.7.0" + jest-message-util "^29.7.0" + jest-util "^29.7.0" natural-compare "^1.4.0" - pretty-format "^29.4.3" - semver "^7.3.5" + pretty-format "^29.7.0" + semver "^7.5.3" -jest-util@^29.0.0, jest-util@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.4.3.tgz#851a148e23fc2b633c55f6dad2e45d7f4579f496" - integrity sha512-ToSGORAz4SSSoqxDSylWX8JzkOQR7zoBtNRsA7e+1WUX5F8jrOwaNpuh1YfJHJKDHXLHmObv5eOjejUd+/Ws+Q== +jest-util@^29.0.0, jest-util@^29.7.0: + version "29.7.0" + resolved "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz" + integrity sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA== dependencies: - "@jest/types" "^29.4.3" + "@jest/types" "^29.6.3" "@types/node" "*" chalk "^4.0.0" ci-info "^3.2.0" graceful-fs "^4.2.9" picomatch "^2.2.3" -jest-validate@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-29.4.3.tgz#a13849dec4f9e95446a7080ad5758f58fa88642f" - integrity sha512-J3u5v7aPQoXPzaar6GndAVhdQcZr/3osWSgTeKg5v574I9ybX/dTyH0AJFb5XgXIB7faVhf+rS7t4p3lL9qFaw== +jest-validate@^29.7.0: + version "29.7.0" + resolved "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz" + integrity sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw== dependencies: - "@jest/types" "^29.4.3" + "@jest/types" "^29.6.3" camelcase "^6.2.0" chalk "^4.0.0" - jest-get-type "^29.4.3" + jest-get-type "^29.6.3" leven "^3.1.0" - pretty-format "^29.4.3" + pretty-format "^29.7.0" -jest-watcher@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-29.4.3.tgz#e503baa774f0c2f8f3c8db98a22ebf885f19c384" - integrity sha512-zwlXH3DN3iksoIZNk73etl1HzKyi5FuQdYLnkQKm5BW4n8HpoG59xSwpVdFrnh60iRRaRBGw0gcymIxjJENPcA== +jest-watcher@^29.7.0: + version "29.7.0" + resolved "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz" + integrity sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g== dependencies: - "@jest/test-result" "^29.4.3" - "@jest/types" "^29.4.3" + "@jest/test-result" "^29.7.0" + "@jest/types" "^29.6.3" "@types/node" "*" ansi-escapes "^4.2.1" chalk "^4.0.0" emittery "^0.13.1" - jest-util "^29.4.3" + jest-util "^29.7.0" string-length "^4.0.1" -jest-worker@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-29.4.3.tgz#9a4023e1ea1d306034237c7133d7da4240e8934e" - integrity sha512-GLHN/GTAAMEy5BFdvpUfzr9Dr80zQqBrh0fz1mtRMe05hqP45+HfQltu7oTBfduD0UeZs09d+maFtFYAXFWvAA== +jest-worker@^29.7.0: + version "29.7.0" + resolved "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz" + integrity sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw== dependencies: "@types/node" "*" - jest-util "^29.4.3" + jest-util "^29.7.0" merge-stream "^2.0.0" supports-color "^8.0.0" -jest@^29.3.1: - version "29.4.3" - resolved "https://registry.yarnpkg.com/jest/-/jest-29.4.3.tgz#1b8be541666c6feb99990fd98adac4737e6e6386" - integrity sha512-XvK65feuEFGZT8OO0fB/QAQS+LGHvQpaadkH5p47/j3Ocqq3xf2pK9R+G0GzgfuhXVxEv76qCOOcMb5efLk6PA== +jest@^29.0.0, jest@^29.6.2: + version "29.7.0" + resolved "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz" + integrity sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw== dependencies: - "@jest/core" "^29.4.3" - "@jest/types" "^29.4.3" + "@jest/core" "^29.7.0" + "@jest/types" "^29.6.3" import-local "^3.0.2" - jest-cli "^29.4.3" + jest-cli "^29.7.0" js-tokens@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" + resolved "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz" integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== js-yaml@^3.13.1: version "3.14.1" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" + resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz" integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== dependencies: argparse "^1.0.7" @@ -2129,111 +2147,111 @@ js-yaml@^3.13.1: jsesc@^2.5.1: version "2.5.2" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" + resolved "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz" integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== json-parse-even-better-errors@^2.3.0: version "2.3.1" - resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" + 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== json5@^2.2.2, json5@^2.2.3: version "2.2.3" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + resolved "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz" integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== jssha@3.2.0: version "3.2.0" - resolved "https://registry.yarnpkg.com/jssha/-/jssha-3.2.0.tgz#88ec50b866dd1411deaddbe6b3e3692e4c710f16" + resolved "https://registry.npmjs.org/jssha/-/jssha-3.2.0.tgz" integrity sha512-QuruyBENDWdN4tZwJbQq7/eAK85FqrI4oDbXjy5IBhYD+2pTJyBUWZe8ctWaCkrV0gy6AaelgOZZBMeswEa/6Q== kleur@^3.0.3: version "3.0.3" - resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" + resolved "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz" integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== leven@^3.1.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" + resolved "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz" integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== lines-and-columns@^1.1.6: version "1.2.4" - resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" + resolved "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz" integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== locate-path@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" + resolved "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz" integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== dependencies: p-locate "^4.1.0" lodash.memoize@4.x: version "4.1.2" - resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" + resolved "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz" integrity sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag== long@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/long/-/long-4.0.0.tgz#9a7b71cfb7d361a194ea555241c92f7468d5bf28" + resolved "https://registry.npmjs.org/long/-/long-4.0.0.tgz" integrity sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA== lower-case@^2.0.2: version "2.0.2" - resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-2.0.2.tgz#6fa237c63dbdc4a82ca0fd882e4722dc5e634e28" + resolved "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz" integrity sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg== dependencies: tslib "^2.0.3" lru-cache@^5.1.1: version "5.1.1" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" + resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz" integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== dependencies: yallist "^3.0.2" lru-cache@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" + resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz" integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== dependencies: yallist "^4.0.0" make-dir@^3.0.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" + resolved "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz" integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== dependencies: semver "^6.0.0" -make-error@1.x, make-error@^1.1.1: +make-error@^1.1.1, make-error@1.x: version "1.3.6" - resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" + resolved "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz" integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== makeerror@1.0.12: version "1.0.12" - resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.12.tgz#3e5dd2079a82e812e983cc6610c4a2cb0eaa801a" + resolved "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz" integrity sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg== dependencies: tmpl "1.0.5" merge-options@^3.0.4: version "3.0.4" - resolved "https://registry.yarnpkg.com/merge-options/-/merge-options-3.0.4.tgz#84709c2aa2a4b24c1981f66c179fe5565cc6dbb7" + resolved "https://registry.npmjs.org/merge-options/-/merge-options-3.0.4.tgz" integrity sha512-2Sug1+knBjkaMsMgf1ctR1Ujx+Ayku4EdJN4Z+C2+JzoeF7A3OZ9KM2GY0CpQS51NR61LTurMJrRKPhSs3ZRTQ== dependencies: is-plain-obj "^2.1.0" merge-stream@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" + resolved "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz" integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== micromatch@^4.0.4: version "4.0.5" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6" + resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz" integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA== dependencies: braces "^3.0.2" @@ -2241,49 +2259,49 @@ micromatch@^4.0.4: mimic-fn@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" + resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz" integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== minimatch@^3.0.4, minimatch@^3.1.1: version "3.1.2" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz" integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== dependencies: brace-expansion "^1.1.7" minimist@^1.2.5: version "1.2.8" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" + resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz" integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== mkdirp@^2.1.3: version "2.1.3" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-2.1.3.tgz#b083ff37be046fd3d6552468c1f0ff44c1545d1f" + resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-2.1.3.tgz" integrity sha512-sjAkg21peAG9HS+Dkx7hlG9Ztx7HLeKnvB3NQRcu/mltCVmvkF0pisbiTSfDVYTT86XEfZrTUosLdZLStquZUw== ms@2.1.2: version "2.1.2" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== -multiformats@9.9.0, multiformats@^9.0.4, multiformats@^9.4.2, multiformats@^9.4.7, multiformats@^9.5.4: +multiformats@^9.0.4, multiformats@^9.4.2, multiformats@^9.4.7, multiformats@^9.5.4, multiformats@9.9.0: version "9.9.0" - resolved "https://registry.yarnpkg.com/multiformats/-/multiformats-9.9.0.tgz#c68354e7d21037a8f1f8833c8ccd68618e8f1d37" + resolved "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz" integrity sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg== murmurhash3js-revisited@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/murmurhash3js-revisited/-/murmurhash3js-revisited-3.0.0.tgz#6bd36e25de8f73394222adc6e41fa3fac08a5869" + resolved "https://registry.npmjs.org/murmurhash3js-revisited/-/murmurhash3js-revisited-3.0.0.tgz" integrity sha512-/sF3ee6zvScXMb1XFJ8gDsSnY+X8PbOyjIuBhtgis10W2Jx4ZjIhikUCIF9c4gpJxVnQIsPAFrSwTCuAjicP6g== natural-compare@^1.4.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" + resolved "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz" integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== no-case@^3.0.4: version "3.0.4" - resolved "https://registry.yarnpkg.com/no-case/-/no-case-3.0.4.tgz#d361fd5c9800f558551a8369fc0dcd4662b6124d" + resolved "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz" integrity sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg== dependencies: lower-case "^2.0.2" @@ -2291,65 +2309,65 @@ no-case@^3.0.4: node-fetch@^2.6.1: version "2.6.9" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.9.tgz#7c7f744b5cc6eb5fd404e0c7a9fec630a55657e6" + resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.9.tgz" integrity sha512-DJm/CJkZkRjKKj4Zi4BsKVZh3ValV5IR5s7LVZnW+6YMh0W1BfNA8XSs6DLMGYlId5F3KnA70uu2qepcR08Qqg== dependencies: whatwg-url "^5.0.0" node-inspect-extracted@^2.0.0: version "2.0.2" - resolved "https://registry.yarnpkg.com/node-inspect-extracted/-/node-inspect-extracted-2.0.2.tgz#e5500e79f6bc03517175881c991f3bfaea67115a" + resolved "https://registry.npmjs.org/node-inspect-extracted/-/node-inspect-extracted-2.0.2.tgz" integrity sha512-8qm9+tu/GmbA/uWQRs6ad8KstyhH94a0pXpRVGHaJ9wHlJbetCYoCwXbKILaaMcE+wgbgpOpzcCnipkL8vTqxA== node-int64@^0.4.0: version "0.4.0" - resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" + resolved "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz" integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw== node-releases@^2.0.8: version "2.0.10" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.10.tgz#c311ebae3b6a148c89b1813fd7c4d3c024ef537f" + resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz" integrity sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w== normalize-path@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" + resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz" integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== npm-run-path@^4.0.1: version "4.0.1" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" + resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz" integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== dependencies: path-key "^3.0.0" object-inspect@^1.9.0: version "1.12.3" - resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.3.tgz#ba62dffd67ee256c8c086dfae69e016cd1f198b9" + resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz" integrity sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g== ohm-js@16.5.0: version "16.5.0" - resolved "https://registry.yarnpkg.com/ohm-js/-/ohm-js-16.5.0.tgz#1e10343cc89b0338224f98dcbbd4e0282a4d959f" + resolved "https://registry.npmjs.org/ohm-js/-/ohm-js-16.5.0.tgz" integrity sha512-OXuB3g1cdP6vCyaGziLmihLkBrtfH9H9jmYp5nRqad093KVzkUSi062IVv5l+3SB/HIbMyDvBqhgR3Q3S+EEnw== once@^1.3.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz" integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== dependencies: wrappy "1" onetime@^5.1.2: version "5.1.2" - resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" + resolved "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz" integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== dependencies: mimic-fn "^2.1.0" open@^8.4.0: version "8.4.2" - resolved "https://registry.yarnpkg.com/open/-/open-8.4.2.tgz#5b5ffe2a8f793dcd2aad73e550cb87b59cb084f9" + resolved "https://registry.npmjs.org/open/-/open-8.4.2.tgz" integrity sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ== dependencies: define-lazy-prop "^2.0.0" @@ -2358,33 +2376,33 @@ open@^8.4.0: p-limit@^2.2.0: version "2.3.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" + resolved "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz" integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== dependencies: p-try "^2.0.0" p-limit@^3.1.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" + resolved "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz" integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== dependencies: yocto-queue "^0.1.0" p-locate@^4.1.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" + resolved "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz" integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A== dependencies: p-limit "^2.2.0" p-try@^2.0.0: version "2.2.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" + resolved "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz" integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== param-case@^3.0.4: version "3.0.4" - resolved "https://registry.yarnpkg.com/param-case/-/param-case-3.0.4.tgz#7d17fe4aa12bde34d4a77d91acfb6219caad01c5" + resolved "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz" integrity sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A== dependencies: dot-case "^3.0.4" @@ -2392,7 +2410,7 @@ param-case@^3.0.4: parse-json@^5.2.0: version "5.2.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" + resolved "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz" integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== dependencies: "@babel/code-frame" "^7.0.0" @@ -2402,7 +2420,7 @@ parse-json@^5.2.0: pascal-case@^3.1.2: version "3.1.2" - resolved "https://registry.yarnpkg.com/pascal-case/-/pascal-case-3.1.2.tgz#b48e0ef2b98e205e7c1dae747d0b1508237660eb" + resolved "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz" integrity sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g== dependencies: no-case "^3.0.4" @@ -2410,7 +2428,7 @@ pascal-case@^3.1.2: path-case@^3.0.4: version "3.0.4" - resolved "https://registry.yarnpkg.com/path-case/-/path-case-3.0.4.tgz#9168645334eb942658375c56f80b4c0cb5f82c6f" + resolved "https://registry.npmjs.org/path-case/-/path-case-3.0.4.tgz" integrity sha512-qO4qCFjXqVTrcbPt/hQfhTQ+VhFsqNKOPtytgNKkKxSoEp3XPUQ8ObFuePylOIok5gjn69ry8XiULxCwot3Wfg== dependencies: dot-case "^3.0.4" @@ -2418,73 +2436,73 @@ path-case@^3.0.4: path-exists@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" + resolved "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz" integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== path-is-absolute@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + resolved "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz" integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== path-key@^3.0.0, path-key@^3.1.0: version "3.1.1" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + resolved "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz" integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== path-normalize@^6.0.10: version "6.0.10" - resolved "https://registry.yarnpkg.com/path-normalize/-/path-normalize-6.0.10.tgz#35bef02035126fd99f1bb903afb6620dc1879a9b" + resolved "https://registry.npmjs.org/path-normalize/-/path-normalize-6.0.10.tgz" integrity sha512-ZlQRW8CAmppOuQB6+dVvkmzk4wGZRDtUmHeV+/596Bm+TYcuiAGV8EACc6hhRw4j3rdv5PimDOshXCqerHAtEA== path-parse@^1.0.7: version "1.0.7" - resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" + resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== picocolors@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" + resolved "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz" integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== picomatch@^2.0.4, picomatch@^2.2.3, picomatch@^2.3.1: version "2.3.1" - resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" + resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== pirates@^4.0.4: version "4.0.5" - resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.5.tgz#feec352ea5c3268fb23a37c702ab1699f35a5f3b" + resolved "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz" integrity sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ== pkg-dir@^4.2.0: version "4.2.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" + resolved "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz" integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== dependencies: find-up "^4.0.0" prando@^6.0.1: version "6.0.1" - resolved "https://registry.yarnpkg.com/prando/-/prando-6.0.1.tgz#ffa8de84c2adc4975dd9df37ae4ada0458face53" + resolved "https://registry.npmjs.org/prando/-/prando-6.0.1.tgz" integrity sha512-ghUWxQ1T9IJmPu6eshc3VU0OwveUtXQ33ZLXYUcz1Oc5ppKLDXKp0TBDj6b0epwhEctzcQSNGR2iHyvQSn4W5A== -prettier@^2.5.1: - version "2.8.4" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.8.4.tgz#34dd2595629bfbb79d344ac4a91ff948694463c3" - integrity sha512-vIS4Rlc2FNh0BySk3Wkd6xmwxB0FpOndW5fisM5H8hsZSxU2VWVB5CWIkIjWvrHjIhxk2g3bfMKM87zNTrZddw== +prettier@^2.8.8: + version "2.8.8" + resolved "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz" + integrity sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q== -pretty-format@^29.0.0, pretty-format@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-29.4.3.tgz#25500ada21a53c9e8423205cf0337056b201244c" - integrity sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA== +pretty-format@^29.0.0, pretty-format@^29.7.0: + version "29.7.0" + resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz" + integrity sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ== dependencies: - "@jest/schemas" "^29.4.3" + "@jest/schemas" "^29.6.3" ansi-styles "^5.0.0" react-is "^18.0.0" prompts@^2.0.1: version "2.4.2" - resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069" + resolved "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz" integrity sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q== dependencies: kleur "^3.0.3" @@ -2492,7 +2510,7 @@ prompts@^2.0.1: protobufjs@^6.10.2: version "6.11.3" - resolved "https://registry.yarnpkg.com/protobufjs/-/protobufjs-6.11.3.tgz#637a527205a35caa4f3e2a9a4a13ddffe0e7af74" + resolved "https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.3.tgz" integrity sha512-xL96WDdCZYdU7Slin569tFX712BxsxslWwAfAhCYjQKGTq7dAU91Lomy6nLLhh/dyGhk/YH4TwTSRxTzhuHyZg== dependencies: "@protobufjs/aspromise" "^1.1.2" @@ -2509,16 +2527,21 @@ protobufjs@^6.10.2: "@types/node" ">=13.7.0" long "^4.0.0" +pure-rand@^6.0.0: + version "6.0.4" + resolved "https://registry.npmjs.org/pure-rand/-/pure-rand-6.0.4.tgz" + integrity sha512-LA0Y9kxMYv47GIPJy6MI84fqTd2HmYZI83W/kM/SkKfDlajnZYfmXFTxkbY+xSBPkLJxltMa9hIkmdc29eguMA== + qs@^6.11.0: version "6.11.0" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.0.tgz#fd0d963446f7a65e1367e01abd85429453f0c37a" + resolved "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz" integrity sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q== dependencies: side-channel "^1.0.4" rabin-wasm@^0.1.4: version "0.1.5" - resolved "https://registry.yarnpkg.com/rabin-wasm/-/rabin-wasm-0.1.5.tgz#5b625ca007d6a2cbc1456c78ae71d550addbc9c9" + resolved "https://registry.npmjs.org/rabin-wasm/-/rabin-wasm-0.1.5.tgz" integrity sha512-uWgQTo7pim1Rnj5TuWcCewRDTf0PEFTSlaUjWP4eY9EbLV9em08v89oCz/WO+wRxpYuO36XEHp4wgYQnAgOHzA== dependencies: "@assemblyscript/loader" "^0.9.4" @@ -2530,12 +2553,12 @@ rabin-wasm@^0.1.4: react-is@^18.0.0: version "18.2.0" - resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.2.0.tgz#199431eeaaa2e09f86427efbb4f1473edb47609b" + resolved "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz" integrity sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w== readable-stream@^3.4.0, readable-stream@^3.6.0: version "3.6.0" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" + resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz" integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== dependencies: inherits "^2.0.3" @@ -2544,29 +2567,29 @@ readable-stream@^3.4.0, readable-stream@^3.6.0: require-directory@^2.1.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" + resolved "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz" integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== resolve-cwd@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d" + resolved "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz" integrity sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg== dependencies: resolve-from "^5.0.0" resolve-from@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" + resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz" integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== resolve.exports@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-2.0.0.tgz#c1a0028c2d166ec2fbf7d0644584927e76e7400e" + resolved "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.0.tgz" integrity sha512-6K/gDlqgQscOlg9fSRpWstA8sYe8rbELsSTNpx+3kTrsVCzvSl0zIvRErM7fdl9ERWDsKnrLnwB+Ne89918XOg== resolve@^1.20.0: version "1.22.1" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.1.tgz#27cb2ebb53f91abb49470a928bba7558066ac177" + resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz" integrity sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw== dependencies: is-core-module "^2.9.0" @@ -2575,24 +2598,31 @@ resolve@^1.20.0: safe-buffer@~5.2.0: version "5.2.1" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" + resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== -semver@7.x, semver@^7.3.5: - version "7.3.8" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.8.tgz#07a78feafb3f7b32347d725e33de7e2a2df67798" - integrity sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A== - dependencies: - lru-cache "^6.0.0" - semver@^6.0.0, semver@^6.3.0: version "6.3.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" + resolved "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== +semver@^7.5.3: + version "7.5.4" + resolved "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz" + integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== + dependencies: + lru-cache "^6.0.0" + +semver@^7.5.4: + version "7.5.4" + resolved "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz" + integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== + dependencies: + lru-cache "^6.0.0" + sentence-case@^3.0.4: version "3.0.4" - resolved "https://registry.yarnpkg.com/sentence-case/-/sentence-case-3.0.4.tgz#3645a7b8c117c787fde8702056225bb62a45131f" + resolved "https://registry.npmjs.org/sentence-case/-/sentence-case-3.0.4.tgz" integrity sha512-8LS0JInaQMCRoQ7YUytAo/xUu5W2XnQxV2HI/6uM6U7CITS1RqPElr30V6uIqyMKM9lJGRVFy5/4CuzcixNYSg== dependencies: no-case "^3.0.4" @@ -2601,19 +2631,19 @@ sentence-case@^3.0.4: shebang-command@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz" integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== dependencies: shebang-regex "^3.0.0" shebang-regex@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== side-channel@^1.0.4: version "1.0.4" - resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf" + resolved "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz" integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw== dependencies: call-bind "^1.0.0" @@ -2622,22 +2652,22 @@ side-channel@^1.0.4: signal-exit@^3.0.3, signal-exit@^3.0.7: version "3.0.7" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" + resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz" integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== sisteransi@^1.0.5: version "1.0.5" - resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" + resolved "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz" integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg== slash@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" + resolved "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz" integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== snake-case@^3.0.4: version "3.0.4" - resolved "https://registry.yarnpkg.com/snake-case/-/snake-case-3.0.4.tgz#4f2bbd568e9935abdfd593f34c691dadb49c452c" + resolved "https://registry.npmjs.org/snake-case/-/snake-case-3.0.4.tgz" integrity sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg== dependencies: dot-case "^3.0.4" @@ -2645,7 +2675,7 @@ snake-case@^3.0.4: source-map-support@0.5.13: version "0.5.13" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.13.tgz#31b24a9c2e73c2de85066c0feb7d44767ed52932" + resolved "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz" integrity sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w== dependencies: buffer-from "^1.0.0" @@ -2653,29 +2683,36 @@ source-map-support@0.5.13: source-map@^0.6.0, source-map@^0.6.1: version "0.6.1" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" + resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== sparse-array@^1.3.1: version "1.3.2" - resolved "https://registry.yarnpkg.com/sparse-array/-/sparse-array-1.3.2.tgz#0e1a8b71706d356bc916fe754ff496d450ec20b0" + resolved "https://registry.npmjs.org/sparse-array/-/sparse-array-1.3.2.tgz" integrity sha512-ZT711fePGn3+kQyLuv1fpd3rNSkNF8vd5Kv2D+qnOANeyKs3fx6bUMGWRPvgTTcYV64QMqZKZwcuaQSP3AZ0tg== sprintf-js@~1.0.2: version "1.0.3" - resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" + resolved "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz" integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== stack-utils@^2.0.3: version "2.0.6" - resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.6.tgz#aaf0748169c02fc33c8232abccf933f54a1cc34f" + resolved "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz" integrity sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ== dependencies: escape-string-regexp "^2.0.0" +string_decoder@^1.1.1: + 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== + dependencies: + safe-buffer "~5.2.0" + string-length@^4.0.1: version "4.0.2" - resolved "https://registry.yarnpkg.com/string-length/-/string-length-4.0.2.tgz#a8a8dc7bd5c1a82b9b3c8b87e125f66871b6e57a" + resolved "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz" integrity sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ== dependencies: char-regex "^1.0.2" @@ -2683,81 +2720,74 @@ string-length@^4.0.1: string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: version "4.2.3" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + resolved "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== dependencies: emoji-regex "^8.0.0" is-fullwidth-code-point "^3.0.0" strip-ansi "^6.0.1" -string_decoder@^1.1.1: - version "1.3.0" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" - integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== - dependencies: - safe-buffer "~5.2.0" - strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== dependencies: ansi-regex "^5.0.1" strip-bom@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878" + resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz" integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w== strip-final-newline@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" + resolved "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz" integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== strip-json-comments@^3.1.1: version "3.1.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" + resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== supports-color@^5.3.0: version "5.5.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz" integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== dependencies: has-flag "^3.0.0" supports-color@^7.1.0: version "7.2.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz" integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== dependencies: has-flag "^4.0.0" supports-color@^8.0.0: version "8.1.1" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz" integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== dependencies: has-flag "^4.0.0" supports-preserve-symlinks-flag@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" + resolved "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz" integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== symbol.inspect@1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/symbol.inspect/-/symbol.inspect-1.0.1.tgz#e13125b8038c4996eb0dfa1567332ad4dcd0763f" + resolved "https://registry.npmjs.org/symbol.inspect/-/symbol.inspect-1.0.1.tgz" integrity sha512-YQSL4duoHmLhsTD1Pw8RW6TZ5MaTX5rXJnqacJottr2P2LZBF/Yvrc3ku4NUpMOm8aM0KOCqM+UAkMA5HWQCzQ== teslabot@^1.3.0, teslabot@^1.5.0: version "1.5.0" - resolved "https://registry.yarnpkg.com/teslabot/-/teslabot-1.5.0.tgz#70f544516699ca5f696d8ae94f3d12cd495d5cd6" + resolved "https://registry.npmjs.org/teslabot/-/teslabot-1.5.0.tgz" integrity sha512-e2MmELhCgrgZEGo7PQu/6bmYG36IDH+YrBI1iGm6jovXkeDIGa3pZ2WSqRjzkuw2vt1EqfkZoV5GpXgqL8QJVg== test-exclude@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e" + resolved "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz" integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w== dependencies: "@istanbuljs/schema" "^0.1.2" @@ -2766,45 +2796,38 @@ test-exclude@^6.0.0: tmpl@1.0.5: version "1.0.5" - resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" + resolved "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz" integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw== to-fast-properties@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" + resolved "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz" integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog== to-regex-range@^5.0.1: version "5.0.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" + resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz" integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== dependencies: is-number "^7.0.0" -ton-core@>=0.49.0: - version "0.49.0" - resolved "https://registry.yarnpkg.com/ton-core/-/ton-core-0.49.0.tgz#69d338daa72e33b36aea4fb02cb0c7b3bf2c668b" - integrity sha512-t3fhs9rb7JfOccSU966bLSHq5G4PYippaXpQJGZPvUwoNVdlM3/nUwz6S6cr/hsGbthRBzApl4FhJsDlx9r4vA== - dependencies: - symbol.inspect "1.0.1" - -ton-core@^0.49.0: - version "0.49.1" - resolved "https://registry.yarnpkg.com/ton-core/-/ton-core-0.49.1.tgz#f00b6db841cc212866697adc0ba55a1a0849af5b" - integrity sha512-qPQdGPGxCYUuF/ZzfaGU4pftbIU6fxkWCzehB2Ipf5yqo5BabZibLAXEQScgFKgjYDLXcMzptt/6DWQo5/LH+w== +ton-core@^0.51.0, ton-core@>=0.36.1, ton-core@>=0.47.0, ton-core@>=0.48.0, ton-core@>=0.49.0, ton-core@>=0.51.0: + version "0.51.0" + resolved "https://registry.npmjs.org/ton-core/-/ton-core-0.51.0.tgz" + integrity sha512-FgejId/X1o7nNc5g8DBW1+9piwFolVU3e83Z8TudDCALik29YPhGOqLHSvcVYux3QV7SL0qCNaKgA3mV2nNfCA== dependencies: symbol.inspect "1.0.1" ton-crypto-primitives@2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/ton-crypto-primitives/-/ton-crypto-primitives-2.0.0.tgz#e85cd68c0d523f6bdf3f306201a76e51b7e9312e" + resolved "https://registry.npmjs.org/ton-crypto-primitives/-/ton-crypto-primitives-2.0.0.tgz" integrity sha512-K+qKjpS0h9sPW6oExcpxnzuQ7nEgHEiDKwIqE/jWD25o8iFGe3FWj1gKxFNbKE9wwYKc5IV8FwrU+raF0KO5nQ== dependencies: jssha "3.2.0" -ton-crypto@^3.2.0: +ton-crypto@^3.2.0, ton-crypto@>=3.2.0: version "3.2.0" - resolved "https://registry.yarnpkg.com/ton-crypto/-/ton-crypto-3.2.0.tgz#cf8cd5410d8f04b04b359f80415b11efb312c60e" + resolved "https://registry.npmjs.org/ton-crypto/-/ton-crypto-3.2.0.tgz" integrity sha512-fltdBNQ45gARMuGMEOjPZWPJ5eSql8p3CA0Dj7tPv5lhU5ziT8SxXLAzDraR9HJ8YpjBHLVvYyhMLRiEwxgtMQ== dependencies: jssha "3.2.0" @@ -2813,16 +2836,16 @@ ton-crypto@^3.2.0: ton-emulator@^2.1.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/ton-emulator/-/ton-emulator-2.1.1.tgz#1ffdcc41fafcb062ba600f243ebe81e5f038764e" + resolved "https://registry.npmjs.org/ton-emulator/-/ton-emulator-2.1.1.tgz" integrity sha512-/k0tB7VPQhJEn2KUwcYlIsLrUgRLnxMGvTSsYk3zsKLbc2HR0d/K7azzmxq9BqBpKPeopL27J1IYNqpSLqMvdA== dependencies: prando "^6.0.1" teslabot "^1.5.0" zod "^3.20.2" -ton@^13.4.1: +ton@^13.6.0: version "13.6.1" - resolved "https://registry.yarnpkg.com/ton/-/ton-13.6.1.tgz#72b8b4da460f67209a1a7594452b28d027abd531" + resolved "https://registry.npmjs.org/ton/-/ton-13.6.1.tgz" integrity sha512-CZlFsmO+l+uPSI2zgnUd8zCS5XuWnUSFRVUjRGl5X5fKXYnjaVba4vMaIyFTJwel+uEMnolGMSlNP8DAa9mfVg== dependencies: axios "^0.25.0" @@ -2833,13 +2856,13 @@ ton@^13.4.1: tr46@~0.0.3: version "0.0.3" - resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" + resolved "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz" integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== -ts-jest@^29.0.3: - version "29.0.5" - resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-29.0.5.tgz#c5557dcec8fe434fcb8b70c3e21c6b143bfce066" - integrity sha512-PL3UciSgIpQ7f6XjVOmbi96vmDHUqAyqDr8YxzopDqX3kfgYtX1cuNeBjP+L9sFXi6nzsGGA6R3fP3DDDJyrxA== +ts-jest@^29.1.1: + version "29.1.1" + resolved "https://registry.npmjs.org/ts-jest/-/ts-jest-29.1.1.tgz" + integrity sha512-D6xjnnbP17cC85nliwGiL+tpoKN0StpgE0TeOjXQTU6MVCfsB4v7aW05CgQ/1OywGb0x/oy9hHFnN+sczTiRaA== dependencies: bs-logger "0.x" fast-json-stable-stringify "2.x" @@ -2847,12 +2870,12 @@ ts-jest@^29.0.3: json5 "^2.2.3" lodash.memoize "4.x" make-error "1.x" - semver "7.x" + semver "^7.5.3" yargs-parser "^21.0.1" -ts-node@^10.9.1: +ts-node@^10.9.1, ts-node@>=9.0.0: version "10.9.1" - resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-10.9.1.tgz#e73de9102958af9e1f0b168a6ff320e25adcff4b" + resolved "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz" integrity sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw== dependencies: "@cspotcode/source-map-support" "^0.8.0" @@ -2871,44 +2894,54 @@ ts-node@^10.9.1: tslib@^1.11.1: version "1.14.1" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" + resolved "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== -tslib@^2.0.3, tslib@^2.3.1: +tslib@^2.0.3: + version "2.5.0" + resolved "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz" + integrity sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg== + +tslib@^2.3.1: version "2.5.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.5.0.tgz#42bfed86f5787aeb41d031866c8f402429e0fddf" + resolved "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz" integrity sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg== tweetnacl@1.0.3: version "1.0.3" - resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-1.0.3.tgz#ac0af71680458d8a6378d0d0d050ab1407d35596" + resolved "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz" integrity sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw== type-detect@4.0.8: version "4.0.8" - resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" + resolved "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz" integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== type-fest@^0.21.3: version "0.21.3" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz" integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== -typescript@^4.9.4: - version "4.9.5" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.5.tgz#095979f9bcc0d09da324d58d03ce8f8374cbe65a" - integrity sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g== +typescript@^5.1.6, typescript@>=2.7, "typescript@>=4.3 <6": + version "5.2.2" + resolved "https://registry.npmjs.org/typescript/-/typescript-5.2.2.tgz" + integrity sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w== uint8arrays@^3.0.0: version "3.1.1" - resolved "https://registry.yarnpkg.com/uint8arrays/-/uint8arrays-3.1.1.tgz#2d8762acce159ccd9936057572dade9459f65ae0" + resolved "https://registry.npmjs.org/uint8arrays/-/uint8arrays-3.1.1.tgz" integrity sha512-+QJa8QRnbdXVpHYjLoTpJIdCTiw9Ir62nocClWuXIq2JIh4Uta0cQsTSpFL678p2CN8B+XSApwcU+pQEqVpKWg== dependencies: multiformats "^9.4.2" +undici-types@~5.25.1: + version "5.25.3" + resolved "https://registry.npmjs.org/undici-types/-/undici-types-5.25.3.tgz" + integrity sha512-Ga1jfYwRn7+cP9v8auvEXN1rX3sWqlayd4HP7OKk4mZWylEmu3KzXDUGrQUN6Ol7qo1gPvB2e5gX6udnyEPgdA== + update-browserslist-db@^1.0.10: version "1.0.10" - resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz#0f54b876545726f17d00cd9a2561e6dade943ff3" + resolved "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz" integrity sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ== dependencies: escalade "^3.1.1" @@ -2916,31 +2949,31 @@ update-browserslist-db@^1.0.10: upper-case-first@^2.0.2: version "2.0.2" - resolved "https://registry.yarnpkg.com/upper-case-first/-/upper-case-first-2.0.2.tgz#992c3273f882abd19d1e02894cc147117f844324" + resolved "https://registry.npmjs.org/upper-case-first/-/upper-case-first-2.0.2.tgz" integrity sha512-514ppYHBaKwfJRK/pNC6c/OxfGa0obSnAl106u97Ed0I625Nin96KAjttZF6ZL3e1XLtphxnqrOi9iWgm+u+bg== dependencies: tslib "^2.0.3" upper-case@^2.0.2: version "2.0.2" - resolved "https://registry.yarnpkg.com/upper-case/-/upper-case-2.0.2.tgz#d89810823faab1df1549b7d97a76f8662bae6f7a" + resolved "https://registry.npmjs.org/upper-case/-/upper-case-2.0.2.tgz" integrity sha512-KgdgDGJt2TpuwBUIjgG6lzw2GWFRCW9Qkfkiv0DxqHHLYJHmtmdUIKcZd8rHgFSjopVTlw6ggzCm1b8MFQwikg== dependencies: tslib "^2.0.3" util-deprecate@^1.0.1: version "1.0.2" - resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + resolved "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz" integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== v8-compile-cache-lib@^3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz#6336e8d71965cb3d35a1bbb7868445a7c05264bf" + resolved "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz" integrity sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg== v8-to-istanbul@^9.0.1: version "9.1.0" - resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-9.1.0.tgz#1b83ed4e397f58c85c266a570fc2558b5feb9265" + resolved "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.1.0.tgz" integrity sha512-6z3GW9x8G1gd+JIIgQQQxXuiJtCXeAjp6RaPEPLv62mH3iPHPxV6W3robxtCzNErRo6ZwTmzWhsbNvjyEBKzKA== dependencies: "@jridgewell/trace-mapping" "^0.3.12" @@ -2949,19 +2982,19 @@ v8-to-istanbul@^9.0.1: walker@^1.0.8: version "1.0.8" - resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f" + resolved "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz" integrity sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ== dependencies: makeerror "1.0.12" webidl-conversions@^3.0.0: version "3.0.1" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" + resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz" integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== whatwg-url@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" + resolved "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz" integrity sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw== dependencies: tr46 "~0.0.3" @@ -2969,14 +3002,14 @@ whatwg-url@^5.0.0: which@^2.0.1: version "2.0.2" - resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + resolved "https://registry.npmjs.org/which/-/which-2.0.2.tgz" integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== dependencies: isexe "^2.0.0" wrap-ansi@^7.0.0: version "7.0.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz" integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== dependencies: ansi-styles "^4.0.0" @@ -2985,12 +3018,12 @@ wrap-ansi@^7.0.0: wrappy@1: version "1.0.2" - resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== write-file-atomic@^4.0.2: version "4.0.2" - resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-4.0.2.tgz#a9df01ae5b77858a027fd2e80768ee433555fcfd" + resolved "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz" integrity sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg== dependencies: imurmurhash "^0.1.4" @@ -2998,27 +3031,27 @@ write-file-atomic@^4.0.2: y18n@^5.0.5: version "5.0.8" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" + resolved "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz" integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== yallist@^3.0.2: version "3.1.1" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" + resolved "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== yallist@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" + resolved "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz" integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== yargs-parser@^21.0.1, yargs-parser@^21.1.1: version "21.1.1" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35" + resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz" integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw== yargs@^17.3.1: version "17.7.1" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.7.1.tgz#34a77645201d1a8fc5213ace787c220eabbd0967" + resolved "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz" integrity sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw== dependencies: cliui "^8.0.1" @@ -3031,20 +3064,15 @@ yargs@^17.3.1: yn@3.1.1: version "3.1.1" - resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50" + resolved "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz" integrity sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q== yocto-queue@^0.1.0: version "0.1.0" - resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" + resolved "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz" integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== -zod@^3.20.2: - version "3.20.6" - resolved "https://registry.yarnpkg.com/zod/-/zod-3.20.6.tgz#2f2f08ff81291d47d99e86140fedb4e0db08361a" - integrity sha512-oyu0m54SGCtzh6EClBVqDDlAYRz4jrVtKwQ7ZnsEmMI9HnzuZFj8QFwAY1M5uniIYACdGvv0PBWPF2kO0aNofA== - -zod@^3.21.4: +zod@^3.20.2, zod@^3.21.4: version "3.22.2" - resolved "https://registry.yarnpkg.com/zod/-/zod-3.22.2.tgz#3add8c682b7077c05ac6f979fea6998b573e157b" + resolved "https://registry.npmjs.org/zod/-/zod-3.22.2.tgz" integrity sha512-wvWkphh5WQsJbVk1tbx1l1Ly4yg+XecD+Mq280uBGt9wa5BKSWf4Mhp6GmrkPixhMxmabYY7RbzlwVP32pbGCg==