@bsv/sdk 1.0.17 → 1.0.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/package.json +1 -1
- package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
- package/dist/types/src/script/ScriptTemplate.d.ts +2 -2
- package/dist/types/src/script/ScriptTemplate.d.ts.map +1 -1
- package/dist/types/tsconfig.types.tsbuildinfo +1 -1
- package/docs/concepts/42.md +35 -0
- package/docs/concepts/BEEF.md +38 -0
- package/docs/concepts/CHAIN_SPV.md +38 -0
- package/docs/concepts/FEE.md +35 -0
- package/docs/concepts/HASHES.md +19 -0
- package/docs/concepts/HOW_TX.md +60 -0
- package/docs/concepts/OP.md +38 -0
- package/docs/concepts/README.md +14 -0
- package/docs/concepts/TEMPLATES.md +42 -0
- package/docs/concepts/TX_SIG.md +34 -0
- package/docs/concepts/TX_VALID.md +35 -0
- package/docs/script.md +2 -2
- package/package.json +1 -1
- package/src/primitives/Signature.ts +2 -2
- package/src/script/ScriptTemplate.ts +7 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"program":{"fileNames":["../../node_modules/typescript/lib/lib.es5.d.ts","../../node_modules/typescript/lib/lib.es2015.d.ts","../../node_modules/typescript/lib/lib.es2016.d.ts","../../node_modules/typescript/lib/lib.es2017.d.ts","../../node_modules/typescript/lib/lib.es2018.d.ts","../../node_modules/typescript/lib/lib.es2019.d.ts","../../node_modules/typescript/lib/lib.es2020.d.ts","../../node_modules/typescript/lib/lib.es2021.d.ts","../../node_modules/typescript/lib/lib.es2022.d.ts","../../node_modules/typescript/lib/lib.es2023.d.ts","../../node_modules/typescript/lib/lib.esnext.d.ts","../../node_modules/typescript/lib/lib.dom.d.ts","../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../node_modules/typescript/lib/lib.es2017.date.d.ts","../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../node_modules/typescript/lib/lib.es2022.array.d.ts","../../node_modules/typescript/lib/lib.es2022.error.d.ts","../../node_modules/typescript/lib/lib.es2022.intl.d.ts","../../node_modules/typescript/lib/lib.es2022.object.d.ts","../../node_modules/typescript/lib/lib.es2022.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2022.string.d.ts","../../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../node_modules/typescript/lib/lib.es2023.array.d.ts","../../node_modules/typescript/lib/lib.es2023.collection.d.ts","../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../node_modules/typescript/lib/lib.esnext.disposable.d.ts","../../node_modules/typescript/lib/lib.esnext.decorators.d.ts","../../node_modules/typescript/lib/lib.decorators.d.ts","../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../src/primitives/mersenne.ts","../../src/primitives/k256.ts","../../src/primitives/reductioncontext.ts","../../src/primitives/bignumber.ts","../../src/primitives/montgomorymethod.ts","../../src/primitives/basepoint.ts","../../src/primitives/jacobianpoint.ts","../../src/primitives/hash.ts","../../src/primitives/utils.ts","../../src/primitives/point.ts","../../src/primitives/curve.ts","../../src/primitives/drbg.ts","../../src/primitives/ecdsa.ts","../../src/primitives/signature.ts","../../src/primitives/random.ts","../../src/primitives/privatekey.ts","../../src/primitives/publickey.ts","../../src/primitives/aesgcm.ts","../../src/primitives/symmetrickey.ts","../../src/script/scriptchunk.ts","../../src/script/op.ts","../../src/script/script.ts","../../src/script/unlockingscript.ts","../../src/script/lockingscript.ts","../../src/transaction/transactionoutput.ts","../../src/transaction/feemodel.ts","../../src/transaction/fee-models/satoshisperkilobyte.ts","../../src/transaction/broadcaster.ts","../../src/transaction/chaintracker.ts","../../src/transaction/merklepath.ts","../../src/script/spend.ts","../../src/transaction/transaction.ts","../../src/transaction/transactioninput.ts","../../src/primitives/transactionsignature.ts","../../src/primitives/index.ts","../../src/script/scripttemplate.ts","../../src/script/templates/p2pkh.ts","../../src/script/templates/rpuzzle.ts","../../src/script/templates/index.ts","../../src/script/index.ts","../../src/transaction/index.ts","../../src/transaction/fee-models/index.ts","../../src/transaction/broadcasters/arc.ts","../../src/transaction/broadcasters/index.ts","../../src/messages/signedmessage.ts","../../src/messages/encryptedmessage.ts","../../src/messages/index.ts","../../src/compat/bsm.ts","../../src/compat/hd.ts","../../src/compat/bip-39-wordlist-en.ts","../../src/compat/mnemonic.ts","../../src/compat/ecies.ts","../../src/compat/index.ts","../../mod.ts","../../node_modules/@babel/types/lib/index.d.ts","../../node_modules/@types/babel__generator/index.d.ts","../../node_modules/@babel/parser/typings/babel-parser.d.ts","../../node_modules/@types/babel__template/index.d.ts","../../node_modules/@types/babel__traverse/index.d.ts","../../node_modules/@types/babel__core/index.d.ts","../../node_modules/@types/node/assert.d.ts","../../node_modules/@types/node/assert/strict.d.ts","../../node_modules/@types/node/globals.d.ts","../../node_modules/@types/node/async_hooks.d.ts","../../node_modules/@types/node/buffer.d.ts","../../node_modules/@types/node/child_process.d.ts","../../node_modules/@types/node/cluster.d.ts","../../node_modules/@types/node/console.d.ts","../../node_modules/@types/node/constants.d.ts","../../node_modules/@types/node/crypto.d.ts","../../node_modules/@types/node/dgram.d.ts","../../node_modules/@types/node/diagnostics_channel.d.ts","../../node_modules/@types/node/dns.d.ts","../../node_modules/@types/node/dns/promises.d.ts","../../node_modules/@types/node/domain.d.ts","../../node_modules/@types/node/dom-events.d.ts","../../node_modules/@types/node/events.d.ts","../../node_modules/@types/node/fs.d.ts","../../node_modules/@types/node/fs/promises.d.ts","../../node_modules/@types/node/http.d.ts","../../node_modules/@types/node/http2.d.ts","../../node_modules/@types/node/https.d.ts","../../node_modules/@types/node/inspector.d.ts","../../node_modules/@types/node/module.d.ts","../../node_modules/@types/node/net.d.ts","../../node_modules/@types/node/os.d.ts","../../node_modules/@types/node/path.d.ts","../../node_modules/@types/node/perf_hooks.d.ts","../../node_modules/@types/node/process.d.ts","../../node_modules/@types/node/punycode.d.ts","../../node_modules/@types/node/querystring.d.ts","../../node_modules/@types/node/readline.d.ts","../../node_modules/@types/node/readline/promises.d.ts","../../node_modules/@types/node/repl.d.ts","../../node_modules/@types/node/stream.d.ts","../../node_modules/@types/node/stream/promises.d.ts","../../node_modules/@types/node/stream/consumers.d.ts","../../node_modules/@types/node/stream/web.d.ts","../../node_modules/@types/node/string_decoder.d.ts","../../node_modules/@types/node/test.d.ts","../../node_modules/@types/node/timers.d.ts","../../node_modules/@types/node/timers/promises.d.ts","../../node_modules/@types/node/tls.d.ts","../../node_modules/@types/node/trace_events.d.ts","../../node_modules/@types/node/tty.d.ts","../../node_modules/@types/node/url.d.ts","../../node_modules/@types/node/util.d.ts","../../node_modules/@types/node/v8.d.ts","../../node_modules/@types/node/vm.d.ts","../../node_modules/@types/node/wasi.d.ts","../../node_modules/@types/node/worker_threads.d.ts","../../node_modules/@types/node/zlib.d.ts","../../node_modules/@types/node/globals.global.d.ts","../../node_modules/@types/node/index.d.ts","../../node_modules/@types/graceful-fs/index.d.ts","../../node_modules/@types/istanbul-lib-coverage/index.d.ts","../../node_modules/@types/istanbul-lib-report/index.d.ts","../../node_modules/@types/istanbul-reports/index.d.ts","../../node_modules/@jest/expect-utils/build/index.d.ts","../../node_modules/chalk/index.d.ts","../../node_modules/@sinclair/typebox/typebox.d.ts","../../node_modules/@jest/schemas/build/index.d.ts","../../node_modules/pretty-format/build/index.d.ts","../../node_modules/jest-diff/build/index.d.ts","../../node_modules/jest-matcher-utils/build/index.d.ts","../../node_modules/expect/build/index.d.ts","../../node_modules/@types/jest/index.d.ts","../../node_modules/@types/json-schema/index.d.ts","../../node_modules/@types/json5/index.d.ts","../../node_modules/@types/semver/classes/semver.d.ts","../../node_modules/@types/semver/functions/parse.d.ts","../../node_modules/@types/semver/functions/valid.d.ts","../../node_modules/@types/semver/functions/clean.d.ts","../../node_modules/@types/semver/functions/inc.d.ts","../../node_modules/@types/semver/functions/diff.d.ts","../../node_modules/@types/semver/functions/major.d.ts","../../node_modules/@types/semver/functions/minor.d.ts","../../node_modules/@types/semver/functions/patch.d.ts","../../node_modules/@types/semver/functions/prerelease.d.ts","../../node_modules/@types/semver/functions/compare.d.ts","../../node_modules/@types/semver/functions/rcompare.d.ts","../../node_modules/@types/semver/functions/compare-loose.d.ts","../../node_modules/@types/semver/functions/compare-build.d.ts","../../node_modules/@types/semver/functions/sort.d.ts","../../node_modules/@types/semver/functions/rsort.d.ts","../../node_modules/@types/semver/functions/gt.d.ts","../../node_modules/@types/semver/functions/lt.d.ts","../../node_modules/@types/semver/functions/eq.d.ts","../../node_modules/@types/semver/functions/neq.d.ts","../../node_modules/@types/semver/functions/gte.d.ts","../../node_modules/@types/semver/functions/lte.d.ts","../../node_modules/@types/semver/functions/cmp.d.ts","../../node_modules/@types/semver/functions/coerce.d.ts","../../node_modules/@types/semver/classes/comparator.d.ts","../../node_modules/@types/semver/classes/range.d.ts","../../node_modules/@types/semver/functions/satisfies.d.ts","../../node_modules/@types/semver/ranges/max-satisfying.d.ts","../../node_modules/@types/semver/ranges/min-satisfying.d.ts","../../node_modules/@types/semver/ranges/to-comparators.d.ts","../../node_modules/@types/semver/ranges/min-version.d.ts","../../node_modules/@types/semver/ranges/valid.d.ts","../../node_modules/@types/semver/ranges/outside.d.ts","../../node_modules/@types/semver/ranges/gtr.d.ts","../../node_modules/@types/semver/ranges/ltr.d.ts","../../node_modules/@types/semver/ranges/intersects.d.ts","../../node_modules/@types/semver/ranges/simplify.d.ts","../../node_modules/@types/semver/ranges/subset.d.ts","../../node_modules/@types/semver/internals/identifiers.d.ts","../../node_modules/@types/semver/index.d.ts","../../node_modules/@types/stack-utils/index.d.ts","../../node_modules/@types/yargs-parser/index.d.ts","../../node_modules/@types/yargs/index.d.ts"],"fileInfos":[{"version":"2ac9cdcfb8f8875c18d14ec5796a8b029c426f73ad6dc3ffb580c228b58d1c44","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"dc48272d7c333ccf58034c0026162576b7d50ea0e69c3b9292f803fc20720fd5","impliedFormat":1},{"version":"9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"5514e54f17d6d74ecefedc73c504eadffdeda79c7ea205cf9febead32d45c4bc","impliedFormat":1},{"version":"1c0cdb8dc619bc549c3e5020643e7cf7ae7940058e8c7e5aefa5871b6d86f44b","impliedFormat":1},{"version":"bed7b7ba0eb5a160b69af72814b4dde371968e40b6c5e73d3a9f7bee407d158c","impliedFormat":1},{"version":"0075fa5ceda385bcdf3488e37786b5a33be730e8bc4aa3cf1e78c63891752ce8","affectsGlobalScope":true,"impliedFormat":1},{"version":"f296963760430fb65b4e5d91f0ed770a91c6e77455bacf8fa23a1501654ede0e","affectsGlobalScope":true,"impliedFormat":1},{"version":"09226e53d1cfda217317074a97724da3e71e2c545e18774484b61562afc53cd2","affectsGlobalScope":true,"impliedFormat":1},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true,"impliedFormat":1},{"version":"8b41361862022eb72fcc8a7f34680ac842aca802cf4bc1f915e8c620c9ce4331","affectsGlobalScope":true,"impliedFormat":1},{"version":"f7bd636ae3a4623c503359ada74510c4005df5b36de7f23e1db8a5c543fd176b","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"0c20f4d2358eb679e4ae8a4432bdd96c857a2960fd6800b21ec4008ec59d60ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true,"impliedFormat":1},{"version":"82d0d8e269b9eeac02c3bd1c9e884e85d483fcb2cd168bccd6bc54df663da031","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"b8deab98702588840be73d67f02412a2d45a417a3c097b2e96f7f3a42ac483d1","affectsGlobalScope":true,"impliedFormat":1},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"376d554d042fb409cb55b5cbaf0b2b4b7e669619493c5d18d5fa8bd67273f82a","affectsGlobalScope":true,"impliedFormat":1},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true,"impliedFormat":1},{"version":"c4138a3dd7cd6cf1f363ca0f905554e8d81b45844feea17786cdf1626cb8ea06","affectsGlobalScope":true,"impliedFormat":1},{"version":"6ff3e2452b055d8f0ec026511c6582b55d935675af67cdb67dd1dc671e8065df","affectsGlobalScope":true,"impliedFormat":1},{"version":"03de17b810f426a2f47396b0b99b53a82c1b60e9cba7a7edda47f9bb077882f4","affectsGlobalScope":true,"impliedFormat":1},{"version":"8184c6ddf48f0c98429326b428478ecc6143c27f79b79e85740f17e6feb090f1","affectsGlobalScope":true,"impliedFormat":1},{"version":"261c4d2cf86ac5a89ad3fb3fafed74cbb6f2f7c1d139b0540933df567d64a6ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"6af1425e9973f4924fca986636ac19a0cf9909a7e0d9d3009c349e6244e957b6","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"15a630d6817718a2ddd7088c4f83e4673fde19fa992d2eae2cf51132a302a5d3","affectsGlobalScope":true,"impliedFormat":1},{"version":"b7e9f95a7387e3f66be0ed6db43600c49cec33a3900437ce2fd350d9b7cb16f2","affectsGlobalScope":true,"impliedFormat":1},{"version":"01e0ee7e1f661acedb08b51f8a9b7d7f959e9cdb6441360f06522cc3aea1bf2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac17a97f816d53d9dd79b0d235e1c0ed54a8cc6a0677e9a3d61efb480b2a3e4e","affectsGlobalScope":true,"impliedFormat":1},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true,"impliedFormat":1},{"version":"ec0104fee478075cb5171e5f4e3f23add8e02d845ae0165bfa3f1099241fa2aa","affectsGlobalScope":true,"impliedFormat":1},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true,"impliedFormat":1},{"version":"9cc66b0513ad41cb5f5372cca86ef83a0d37d1c1017580b7dace3ea5661836df","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"709efdae0cb5df5f49376cde61daacc95cdd44ae4671da13a540da5088bf3f30","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"bc496ef4377553e461efcf7cc5a5a57cf59f9962aea06b5e722d54a36bf66ea1","affectsGlobalScope":true,"impliedFormat":1},{"version":"038a2f66a34ee7a9c2fbc3584c8ab43dff2995f8c68e3f566f4c300d2175e31e","affectsGlobalScope":true,"impliedFormat":1},{"version":"4fa6ed14e98aa80b91f61b9805c653ee82af3502dc21c9da5268d3857772ca05","affectsGlobalScope":true,"impliedFormat":1},{"version":"f5c92f2c27b06c1a41b88f6db8299205aee52c2a2943f7ed29bd585977f254e8","affectsGlobalScope":true,"impliedFormat":1},{"version":"930b0e15811f84e203d3c23508674d5ded88266df4b10abee7b31b2ac77632d2","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"b9ea5778ff8b50d7c04c9890170db34c26a5358cccba36844fe319f50a43a61a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"50d53ccd31f6667aff66e3d62adf948879a3a16f05d89882d1188084ee415bbc","affectsGlobalScope":true,"impliedFormat":1},{"version":"65be38e881453e16f128a12a8d36f8b012aa279381bf3d4dc4332a4905ceec83","affectsGlobalScope":true,"impliedFormat":1},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"307c8b7ebbd7f23a92b73a4c6c0a697beca05b06b036c23a34553e5fe65e4fdc","affectsGlobalScope":true,"impliedFormat":1},{"version":"e1913f656c156a9e4245aa111fbb436d357d9e1fe0379b9a802da7fe3f03d736","affectsGlobalScope":true,"impliedFormat":1},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","affectsGlobalScope":true,"impliedFormat":1},{"version":"f35a831e4f0fe3b3697f4a0fe0e3caa7624c92b78afbecaf142c0f93abfaf379","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"78f8232f29ca77721f9dd9798c3bef83599c9256fd1d5d541e652151c433e8af","signature":"50edbdea74283a6a7ddcbb361a4bce2ce2758e36438d383ce098242e0704d127","impliedFormat":99},{"version":"6416da52b472e7716f6d73f113c2f0a6cb3e711ad426391e5da49b1d08f442f0","signature":"593b34ef08bbe1d1487f544c04877dfe157abb2eee9f315cbf0deed02c5f1c58","impliedFormat":99},{"version":"3e4458c644bbcd8326c7a68713649aa58aae5458718ba09b14a432d851be0c17","signature":"8d3b45a44034c5907cd25313ffbb45126162be336997abbe817995085b7c91e8","impliedFormat":99},{"version":"3332d6e010d88bb833013a6f0b44c44727723ea3748136255a2f4ca5154693cc","signature":"7e579ec417c04af9841a76f87998113f0e26fe6d9764df9fc51848c6bdd095a9","impliedFormat":99},{"version":"dfb041cdbc325167423bba5cbc2bafee4c8dfe9cf626cb2c26e093996cdd831a","signature":"dcc470a07014537380b3ef3a2559984387e724b09384262dfb5ee8ca3d72089e","impliedFormat":99},{"version":"7ed23712e507754ca8736d5fc03dbc63a361b9d3d86987a0c58997b01e5ee6c1","signature":"91cb63b3196af7837bd6688a562f7f83853f9efff037a8ace21dbabf9ce59f9d","impliedFormat":99},{"version":"249db36e6cb9720a6637023c32a631bd51d1963632e81bf6dd916ebb56587068","signature":"47ff6368d2a381cd0a8f84cd2c5f5373ad1bb5562ee36e0e9f6d41e7cf4d7504","impliedFormat":99},{"version":"e13901e732c8c6246261df6e14d27058e9987e9b6b8d9e6367ecfb25f2a333c7","signature":"5d7cd5930e8c759909a21f99d12e048a9f4b02644b34d11852b89fbbff7c2821","impliedFormat":99},{"version":"4a37bbbd57d83eda137b161115805a3b45686f250631b620443bdf7cb32987ea","signature":"83416caad55c5018f13cfb0f09e6bdb16442e265c526c4e3edd89c4977acc97e","impliedFormat":99},{"version":"cea9678b9ca54f0993e85496473102730aa4192787199ad570778dcf832d96f6","signature":"3ff3f5a09212d7f7c9b2392010fe0da9040d40225fc771e7d1fae45b195a7275","impliedFormat":99},{"version":"6c66acf0025a9390a5d95c2ae91292012af1c981f473259698034ae0746121cb","signature":"972d058fabef5ec414cdb970b406137505012061d22a818d0bafd59b1d7fc304","impliedFormat":99},{"version":"96f15af13b5ccc67f59859419651a1a76758569a17d6049fef125b7325141f72","signature":"2a99656d7ebc39ddcd66c7313adfeee9b5f988cede55b0f41ddd917fbbb5ee08","impliedFormat":99},{"version":"26cfff17491885f257da38b4344ed24b41f89beeb08eafa820401f49622e0650","signature":"dff2ba9b0c494459fd33d5f99e0f2722b5c6652758eb149e82395b7f1f0769ca","impliedFormat":99},{"version":"3df8910b430d36797379eaa988af44428887456344c5d067d03ecd2abb808613","signature":"43d0f31d94189cb00daead423d25cfacdb03a3ec24be485e1b329612ad0793a1","impliedFormat":99},{"version":"1cf2798fa1fe373bddfc3cbe18c1fdb66cbc054b7c09d0354df6d02b1e684938","signature":"d7520ad8621111bb484bd4fcf06ec19c8f5c2dcfa938d41a0288d59b15fd1930","impliedFormat":99},{"version":"798a825af85f10f2fa19199960eee337c7608cb2f5c5732979ce193b3da76057","signature":"50a7d4054a05a8b088e8560f37a8335b79e83435b4539fcd860b6d03bfe2c7ea","impliedFormat":99},{"version":"1b9dbca0505d6196186c27f398db0eb753a535b96db74eace8a6b1e0c6f3a511","signature":"6fa752678e962e6050f5c871b83d893aa55b60f815e17b566bbdd409572eaeb9","impliedFormat":99},{"version":"1f8781fe6d5f2e0cf355f0732e0a8c7b076197bb00dfb03ad043df80d9acd7ca","signature":"0992219a550bfdfd60098cd695d68b43f531e2bb24215281378c01a093d281d8","impliedFormat":99},{"version":"b2727cfc6afb1eb769535ab2a8b2c3bf418fc46141d7adb4fc1ee385f0239ac3","signature":"00ca19acf737096a1e6984e383e9f115a3a43619e43788892a554e189ec0e8c5","impliedFormat":99},{"version":"fbd8484c24a187875194878aeacfc32daef9d0ae4f1eb8ce31b355e2d3df8c66","signature":"46c0230476c149252b9eddf0a97d521a5af223e497c76d349537a0fe84869cdc","impliedFormat":99},{"version":"3d150b9fdeb12ad8448ca768b5ef95cb683adddaeb2185546f7961a2bc8d643c","signature":"dbfc8224f4e3c3881c6bbf339bfc57e5977f5171d2ae2534fcf21c747e663587","impliedFormat":99},{"version":"c81945297ce96f2034aba540d3806cac5eaadec9493a4d42682b6ae17b50c30a","signature":"22a3b38628a77dd1023eba939b991357ccbc85ae67d31014cf5c0d7632b9f251","impliedFormat":99},{"version":"a613c66badc56f604d3b1ce2cbb18e82b668d8d03850d182978234cd89084afb","signature":"30072e54d199fb4007c422ee88003cbd1b9fb755b8e2bdfef50543706d7ecf3d","impliedFormat":99},{"version":"079d6f434bf32684499d1dac9e7eb2dbb55b837a3560361a9c098828ae789f06","signature":"c4b26ce240c1eea17878c80a29d66bae16bbd3a07e98e034ea2e6813a186ebfc","impliedFormat":99},{"version":"1212ecc67913ad47a321ee21b0522d88b8026cb269b28f7215984dd98f2bbb79","signature":"768d6fbec410216bfef9030b317eee914b19081c9905fc727401bc28e70d6ec5","impliedFormat":99},{"version":"387ccdb4ba57cbe3081944a3c29ff1f20da0db3132a4c046f57682141107835d","signature":"1913c2a3aab411553472debac3779ee8731335b9210389653eb0890736a064fe","impliedFormat":99},{"version":"5e7baebaf3b2a064fe9cb52d74be5d0c4709e4e5b3a5abff4594d92bb90242ed","signature":"4f2a15d6f9061c0c49a9df3185fe62c9088ea9c9731fd8acce2de9117e2a704c","impliedFormat":99},{"version":"7b9e5e6c0dd3defceba4eaeac3d3bfc11feb043fe6bcea6d1084c6d8536c3783","signature":"fa0ac76995ef90f3547bedc38f054ed04fd0d1e84009fd28f0a8a5b0bea85cc0","impliedFormat":99},{"version":"6e6e78d8a49e1fedd8977995535b11eb7826cdc58bb3aa345cc0cfb0751178bd","signature":"7bc83750744e6d7924e4b16e8e8d9272b1dbad685e4463b6f39a7b7dd336e833","impliedFormat":99},{"version":"e96b6dbca345b90e3eeeb0a0841fad4348a4872e299d75d17eab4011f754e0ec","signature":"dd36329202774e2f32f3f5c0b2801b3c85ec43495e85bf4f2bee681597b5b5c8","impliedFormat":99},{"version":"d18f4c6fa293a578c6e4be59ce42cad07bf9d764a565260121b127a6a1cad640","signature":"af54a292d3c6f475caa487f428e1a8ff009bef631e27781fca60bd103e8e3df2","impliedFormat":99},{"version":"74c2016a6c0ebfc982c29a22af12f06663a43150e38f4d0147aaf57a2a333157","signature":"fd584315ef1c06b7828c2eaa68ac5f1a7053097f7bb4a4d9d8cd234166e02971","impliedFormat":99},{"version":"c59c9abbee35c374c0885c92c88340f361ffbd9892fcba86371ce0a8eb34feb2","signature":"8836e3fe0e061ae6c734e22ac66a0f4c45357e4f084b5373e09607c7cd493028","impliedFormat":99},{"version":"40a199af3234d69e71cbf02085498d96370248c50b304af8defc018281a9130c","signature":"3c985fba23832986f09a0914938a1f242199c49cad3527d051bfbfb6fc6f74d5","impliedFormat":99},{"version":"0a7360a92456060fad9377aa0186c5af52600f1ef25f079c67317a4e2a371777","signature":"73a4eeda6bc23a9bba474dedb147ffd5a8c0c1b30851ab262d273f28e613f102","impliedFormat":99},{"version":"4bc9015277d87375edb2c9cf5768728fdddedac686e1a48522509f97c47bd28b","signature":"3236c692c1f787609812a925b509dcbbf86896d3199c16714b4047620a8b353f","impliedFormat":99},{"version":"4b7e00befc9378ee0eb1526fe1a619342e286b2da1b454855cac9ac4afa0be74","signature":"4a921b58051b16feffbd36db31e9cd858d8fa366c0a193a7e7e72b3269a7ddd1","impliedFormat":99},{"version":"f1ea032ce43f538d9839d593e1cdd2b0ad036d3185181fcfc120c2ac8212e0d7","signature":"4723fd0b8862465cc3a15305344af29b572ef487cb39964794725ed9bba70b0c","impliedFormat":99},{"version":"b0a0340f70f627ca7b21f85556aab7656cf3c61b75f6abf6cce2f0ed2ec546ab","signature":"d078842ad92a23fd2feb478dc828d48472e69b405342a4e88bad99c6e65dbe29","impliedFormat":99},{"version":"3999a66ef491e34e1a1d864920c4c45f2f189def5808fba1082a77a9c3f5f022","signature":"70bf2b0acc6cc975444f886615ec7d44795644eb9f9a99da42c4c20e7c6c386c","impliedFormat":99},{"version":"14267dae5068bc996063cd7acdc9610327383580fe2c3d355957158eaf384884","signature":"0f325f8471a75d8a662840ff5eedd2fd038d7ad960612d703b1ba3cc57074bd9","impliedFormat":99},{"version":"7a53dde9117e238bc8431695b98954836a3a4178239caba3874bea0d56563bad","signature":"e1732408cb69ca45bbbe0cda5ba4e248707ddcf50adcb5f9864000a74224fad9","impliedFormat":99},{"version":"26203a38661428297ee7e864b40390b752975cadfd9284f364ccbb99da8ef5c2","signature":"963288b52d554cd1b63746cdb04e129ef81d41558bbbce384e1719137cf54602","impliedFormat":99},{"version":"78f1b4e76ee43ef381876fd8e20812d00000946818dba2a00986b05e3f9ff83f","signature":"be433098468027759291ac5b449655dedbf0ea1c1e3c0ffea87b0af50cc26837","impliedFormat":99},{"version":"0c5484b6012ff64658956901c1e0be5ff702d4fc63b9820e57a42e8259be19a7","signature":"391158f9180951ec4af103e34d2243ac9ce31c1eeef6cd6eac4755a86b73af33","impliedFormat":99},{"version":"9f242994e47e57870b9df723d69ed7abc5fc36c620d610edce99aff8f3536999","signature":"c6a51ab4d7691202f12dfa90944af70e7ec00bdeea05697b4ca8b616f5795246","impliedFormat":99},{"version":"9f8fc8bb76f9e7afed282bfac56f836ed07fe8f2d34ccfeefa5021152d01944d","signature":"a83755673215e98d6897bf61b9817aceaf00a70a50c23c6020933455efa97a65","impliedFormat":99},{"version":"772f75fe08a0e352a42d8229647ee8a2219be9eb78cee420f44507eeb5d530b9","signature":"98a6d82adbaa1ce57b2e6d8683a0becb828164c6ca05b1a855177a5ad77f9bf4","impliedFormat":99},{"version":"b92dfc8729dc5886276c28e7654e97262a040b18f4dff8c8d834e25154fcde9f","signature":"d5abc7a8bc185d1b087fc4610af552226387f21b3bcb0da048caaea4cfe6063a","impliedFormat":99},{"version":"497711bd7a49659b1294b17df5801ed3e939e33e0ee313d8373ee0aa11a9dc82","signature":"323f533b672b96b572a4862a71a229b913df667e88cfd5b2328e01aab8097589","impliedFormat":99},{"version":"449a83d8d5cf6be87463b3a4db18a40bedf3c475f1c2f0193ea174f6f05dc151","signature":"15d94a4bafca6beeecdcf2d0411a773cc7ffad2e6c911e43e8487c4338daa6bb","impliedFormat":99},{"version":"6922401f50b3dea527d6ee473be4a2baf799337d7837f0422627390f10681802","signature":"47ba09c03551eb26d8beb506c22d937c6a97437474775ed9c77ffdd20bb56ec8","impliedFormat":99},{"version":"d9dd675668fb33558479e19179b5ba6ddd487dad79b4e6dfc2da262ecb115efc","signature":"be2fa149c0adf79b16ef75587b22416792b8e81422596fbf4925cce06defc70b","impliedFormat":99},{"version":"b78fe56cb5a0abe4e240d2dc98c9f66b2c65d88f9e1c6aa89c14ad3e4a98dfeb","signature":"782d7f9652d1e4256edb944d6d6abbbdacf5e43c1b54f09023b6d2e4c80b6053","impliedFormat":99},{"version":"f713064ca751dc588bc13832137c418cb70cf0446de92ade60ad631071558fca","impliedFormat":1},{"version":"dfefd34e8ab60f41d0c130527d5092d6ce662dc9fa85bc8c97682baf65830b51","impliedFormat":1},{"version":"96c23535f4f9dd15beb767e070559ea672f6a35f103152836a67100605136a96","impliedFormat":1},{"version":"b0f4dd1a825912da8f12fd3388d839ef4aa51165ea0e60e4869b50b7ccb4f6fc","impliedFormat":1},{"version":"9cb7c5f710dc84d2e9500831a3e9a27afd3c3710f5a1b8744a50473e565b41fc","impliedFormat":1},{"version":"cf6b2edde490f303918809bfab1da8b6d059b50c160bec72005ff4c248bdd079","impliedFormat":1},{"version":"09df3b4f1c937f02e7fee2836d4c4d7a63e66db70fd4d4e97126f4542cc21d9d","impliedFormat":1},{"version":"7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","impliedFormat":1},{"version":"32465ea19404cb188e84cf08c6b1f6b12d739140436402cdbc184a3fd20a7d81","affectsGlobalScope":true,"impliedFormat":1},{"version":"cce1f5f86974c1e916ec4a8cab6eec9aa8e31e8148845bf07fbaa8e1d97b1a2c","impliedFormat":1},{"version":"bb6872f39c58753205c19b9f89e1e07d61116ae5d82539cef0f3bde5e8fecb57","affectsGlobalScope":true,"impliedFormat":1},{"version":"546ab07e19116d935ad982e76a223275b53bff7771dab94f433b7ab04652936e","impliedFormat":1},{"version":"7b43160a49cf2c6082da0465876c4a0b164e160b81187caeb0a6ca7a281e85ba","impliedFormat":1},{"version":"aefb5a4a209f756b580eb53ea771cca8aad411603926f307a5e5b8ec6b16dcf6","affectsGlobalScope":true,"impliedFormat":1},{"version":"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb","impliedFormat":1},{"version":"3a3b3310118e79c8d394171a87f4dc8fd562337a85e33f9fa9636040a2ec2fde","impliedFormat":1},{"version":"b86e1a45b29437f3a99bad4147cb9fe2357617e8008c0484568e5bb5138d6e13","impliedFormat":1},{"version":"b5b719a47968cd61a6f83f437236bb6fe22a39223b6620da81ef89f5d7a78fb7","impliedFormat":1},{"version":"42c431e7965b641106b5e25ab3283aa4865ca7bb9909610a2abfa6226e4348be","impliedFormat":1},{"version":"0b7e732af0a9599be28c091d6bd1cb22c856ec0d415d4749c087c3881ca07a56","impliedFormat":1},{"version":"b7fe70be794e13d1b7940e318b8770cd1fb3eced7707805318a2e3aaac2c3e9e","impliedFormat":1},{"version":"2c71199d1fc83bf17636ad5bf63a945633406b7b94887612bba4ef027c662b3e","affectsGlobalScope":true,"impliedFormat":1},{"version":"738a0de235edb5caf581c5aa86f5dd48ee28b2d0da1e327cbc57cdabde116bda","affectsGlobalScope":true,"impliedFormat":1},{"version":"3b4c85eea12187de9929a76792b98406e8778ce575caca8c574f06da82622c54","impliedFormat":1},{"version":"f788131a39c81e0c9b9e463645dd7132b5bc1beb609b0e31e5c1ceaea378b4df","impliedFormat":1},{"version":"f4016bf7fd9b760162521f2f18fab4023095795e4fb34496d8c61c59acfd0a56","impliedFormat":1},{"version":"21894466693f64957b9bd4c80fa3ec7fdfd4efa9d1861e070aca23f10220c9b2","impliedFormat":1},{"version":"396a8939b5e177542bdf9b5262b4eee85d29851b2d57681fa9d7eae30e225830","impliedFormat":1},{"version":"ad8848c289c0b633452e58179f46edccd14b5a0fe90ebce411f79ff040b803e0","impliedFormat":1},{"version":"120285cc97da7b20b0cbf2c557a5db7d215ec17ee688165ac8aff7f8de035b75","affectsGlobalScope":true,"impliedFormat":1},{"version":"5ca4a9fb7c9ee4f60df6d3bb6460e2c7f3a9cd7b8f7ebae29110fac74de4e50c","impliedFormat":1},{"version":"42a7993edf3288c33755ec08faefb1a40fd9f5f0844f82e48ae152791e80c76a","impliedFormat":1},{"version":"0f05c06ff6196958d76b865ae17245b52d8fe01773626ac3c43214a2458ea7b7","impliedFormat":1},{"version":"f49fb15c4aa06b65b0dce4db4584bfd8a9f74644baef1511b404dc95be34af00","affectsGlobalScope":true,"impliedFormat":1},{"version":"d48009cbe8a30a504031cc82e1286f78fed33b7a42abf7602c23b5547b382563","affectsGlobalScope":true,"impliedFormat":1},{"version":"7aaeb5e62f90e1b2be0fc4844df78cdb1be15c22b427bc6c39d57308785b8f10","impliedFormat":1},{"version":"3ba30205a029ebc0c91d7b1ab4da73f6277d730ca1fc6692d5a9144c6772c76b","impliedFormat":1},{"version":"d8dba11dc34d50cb4202de5effa9a1b296d7a2f4a029eec871f894bddfb6430d","impliedFormat":1},{"version":"8b71dd18e7e63b6f991b511a201fad7c3bf8d1e0dd98acb5e3d844f335a73634","impliedFormat":1},{"version":"01d8e1419c84affad359cc240b2b551fb9812b450b4d3d456b64cda8102d4f60","impliedFormat":1},{"version":"458b216959c231df388a5de9dcbcafd4b4ca563bc3784d706d0455467d7d4942","impliedFormat":1},{"version":"269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","impliedFormat":1},{"version":"8258e69a3b0de494ea55eeea7a4d3216ac112c12006c74dfd381c0d5e42a2607","impliedFormat":1},{"version":"cdaaf046791d7d588f28f32197c5d6acc43343e62540a67eed194c9c20535fdc","impliedFormat":1},{"version":"831c22d257717bf2cbb03afe9c4bcffc5ccb8a2074344d4238bf16d3a857bb12","impliedFormat":1},{"version":"e78290186ee23e5a4d067811dcc547973be09f4dc9564cfed6c7f1f0bdd89d24","affectsGlobalScope":true,"impliedFormat":1},{"version":"cbf046714f3a3ba2544957e1973ac94aa819fa8aa668846fa8de47eb1c41b0b2","affectsGlobalScope":true,"impliedFormat":1},{"version":"aa34c3aa493d1c699601027c441b9664547c3024f9dbab1639df7701d63d18fa","impliedFormat":1},{"version":"eae74e3d50820f37c72c0679fed959cd1e63c98f6a146a55b8c4361582fa6a52","impliedFormat":1},{"version":"7c651f8dce91a927ab62925e73f190763574c46098f2b11fb8ddc1b147a6709a","impliedFormat":1},{"version":"7440ab60f4cb031812940cc38166b8bb6fbf2540cfe599f87c41c08011f0c1df","impliedFormat":1},{"version":"aed89e3c18f4c659ee8153a76560dffda23e2d801e1e60d7a67abd84bc555f8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"290276bcec65d49eb152489c62845b28bed530258751c80d04d167b36b33be72","affectsGlobalScope":true,"impliedFormat":1},{"version":"e393915d3dc385e69c0e2390739c87b2d296a610662eb0b1cb85224e55992250","impliedFormat":1},{"version":"2f940651c2f30e6b29f8743fae3f40b7b1c03615184f837132b56ea75edad08b","impliedFormat":1},{"version":"5749c327c3f789f658072f8340786966c8b05ea124a56c1d8d60e04649495a4d","impliedFormat":1},{"version":"c9d62b2a51b2ff166314d8be84f6881a7fcbccd37612442cf1c70d27d5352f50","affectsGlobalScope":true,"impliedFormat":1},{"version":"e7dbf5716d76846c7522e910896c5747b6df1abd538fee8f5291bdc843461795","impliedFormat":1},{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true,"impliedFormat":1},{"version":"16dcbd7095be9ba030b671ef982dc760e03d40a0f54f27f2a6f1fa00f5670fe7","impliedFormat":1},{"version":"6adaa01cba6e7bae17d8291089e9e38bfc3fffcd522e2161214cbaccab4c1b2b","impliedFormat":1},{"version":"8b06ac3faeacb8484d84ddb44571d8f410697f98d7bfa86c0fda60373a9f5215","impliedFormat":1},{"version":"c79bd2f3e5c05e7ad80dc82ce8d339cac23ac1f5e6cfab96c860bb70d5162873","impliedFormat":1},{"version":"e3328cedfe4d7fac23ba75d00bf5169269800ab949d0837cd88c4211a52c3762","impliedFormat":1},{"version":"cdcc132f207d097d7d3aa75615ab9a2e71d6a478162dde8b67f88ea19f3e54de","impliedFormat":1},{"version":"0d14fa22c41fdc7277e6f71473b20ebc07f40f00e38875142335d5b63cdfc9d2","impliedFormat":1},{"version":"c085e9aa62d1ae1375794c1fb927a445fa105fed891a7e24edbb1c3300f7384a","impliedFormat":1},{"version":"f315e1e65a1f80992f0509e84e4ae2df15ecd9ef73df975f7c98813b71e4c8da","impliedFormat":1},{"version":"5b9586e9b0b6322e5bfbd2c29bd3b8e21ab9d871f82346cb71020e3d84bae73e","impliedFormat":1},{"version":"3e70a7e67c2cb16f8cd49097360c0309fe9d1e3210ff9222e9dac1f8df9d4fb6","impliedFormat":1},{"version":"ab68d2a3e3e8767c3fba8f80de099a1cfc18c0de79e42cb02ae66e22dfe14a66","impliedFormat":1},{"version":"d96cc6598148bf1a98fb2e8dcf01c63a4b3558bdaec6ef35e087fd0562eb40ec","impliedFormat":1},{"version":"c8950367d1812758e9e354c695c60c3e6311bf2cd98b9f9eb469a19df8a9a486","affectsGlobalScope":true,"impliedFormat":1},{"version":"dd89872dd0647dfd63665f3d525c06d114310a2f7a5a9277e5982a152b31be2b","impliedFormat":1},{"version":"96d14f21b7652903852eef49379d04dbda28c16ed36468f8c9fa08f7c14c9538","impliedFormat":1},{"version":"cc0700b1b97e18a3d5d9184470502d8762ec85158819d662730c3a8c5d702584","impliedFormat":1},{"version":"9871b7ee672bc16c78833bdab3052615834b08375cb144e4d2cba74473f4a589","impliedFormat":1},{"version":"c863198dae89420f3c552b5a03da6ed6d0acfa3807a64772b895db624b0de707","impliedFormat":1},{"version":"8b03a5e327d7db67112ebbc93b4f744133eda2c1743dbb0a990c61a8007823ef","impliedFormat":1},{"version":"86c73f2ee1752bac8eeeece234fd05dfcf0637a4fbd8032e4f5f43102faa8eec","impliedFormat":1},{"version":"42fad1f540271e35ca37cecda12c4ce2eef27f0f5cf0f8dd761d723c744d3159","impliedFormat":1},{"version":"ff3743a5de32bee10906aff63d1de726f6a7fd6ee2da4b8229054dfa69de2c34","impliedFormat":1},{"version":"83acd370f7f84f203e71ebba33ba61b7f1291ca027d7f9a662c6307d74e4ac22","impliedFormat":1},{"version":"1445cec898f90bdd18b2949b9590b3c012f5b7e1804e6e329fb0fe053946d5ec","impliedFormat":1},{"version":"0e5318ec2275d8da858b541920d9306650ae6ac8012f0e872fe66eb50321a669","impliedFormat":1},{"version":"cf530297c3fb3a92ec9591dd4fa229d58b5981e45fe6702a0bd2bea53a5e59be","impliedFormat":1},{"version":"c1f6f7d08d42148ddfe164d36d7aba91f467dbcb3caa715966ff95f55048b3a4","impliedFormat":1},{"version":"f4e9bf9103191ef3b3612d3ec0044ca4044ca5be27711fe648ada06fad4bcc85","impliedFormat":1},{"version":"0c1ee27b8f6a00097c2d6d91a21ee4d096ab52c1e28350f6362542b55380059a","impliedFormat":1},{"version":"7677d5b0db9e020d3017720f853ba18f415219fb3a9597343b1b1012cfd699f7","impliedFormat":1},{"version":"bc1c6bc119c1784b1a2be6d9c47addec0d83ef0d52c8fbe1f14a51b4dfffc675","impliedFormat":1},{"version":"52cf2ce99c2a23de70225e252e9822a22b4e0adb82643ab0b710858810e00bf1","impliedFormat":1},{"version":"770625067bb27a20b9826255a8d47b6b5b0a2d3dfcbd21f89904c731f671ba77","impliedFormat":1},{"version":"d1ed6765f4d7906a05968fb5cd6d1db8afa14dbe512a4884e8ea5c0f5e142c80","impliedFormat":1},{"version":"799c0f1b07c092626cf1efd71d459997635911bb5f7fc1196efe449bba87e965","impliedFormat":1},{"version":"2a184e4462b9914a30b1b5c41cf80c6d3428f17b20d3afb711fff3f0644001fd","impliedFormat":1},{"version":"9eabde32a3aa5d80de34af2c2206cdc3ee094c6504a8d0c2d6d20c7c179503cc","impliedFormat":1},{"version":"397c8051b6cfcb48aa22656f0faca2553c5f56187262135162ee79d2b2f6c966","impliedFormat":1},{"version":"a8ead142e0c87dcd5dc130eba1f8eeed506b08952d905c47621dc2f583b1bff9","impliedFormat":1},{"version":"a02f10ea5f73130efca046429254a4e3c06b5475baecc8f7b99a0014731be8b3","impliedFormat":1},{"version":"f77ff4cd234d3fd18ddd5aeadb6f94374511931976d41f4b9f594cb71f7ce6f3","impliedFormat":1},{"version":"4c9a0564bb317349de6a24eb4efea8bb79898fa72ad63a1809165f5bd42970dd","impliedFormat":1},{"version":"4f18b4e6081e5e980ef53ddf57b9c959d36cffe1eb153865f512a01aeffb5e1e","impliedFormat":1},{"version":"7f17d4846a88eca5fe71c4474ef687ee89c4acf9b5372ab9b2ee68644b7e0fe0","impliedFormat":1},{"version":"b444a410d34fb5e98aa5ee2b381362044f4884652e8bc8a11c8fe14bbd85518e","impliedFormat":1},{"version":"c35808c1f5e16d2c571aa65067e3cb95afeff843b259ecfa2fc107a9519b5392","impliedFormat":1},{"version":"14d5dc055143e941c8743c6a21fa459f961cbc3deedf1bfe47b11587ca4b3ef5","impliedFormat":1},{"version":"a3ad4e1fc542751005267d50a6298e6765928c0c3a8dce1572f2ba6ca518661c","impliedFormat":1},{"version":"f237e7c97a3a89f4591afd49ecb3bd8d14f51a1c4adc8fcae3430febedff5eb6","impliedFormat":1},{"version":"3ffdfbec93b7aed71082af62b8c3e0cc71261cc68d796665faa1e91604fbae8f","impliedFormat":1},{"version":"662201f943ed45b1ad600d03a90dffe20841e725203ced8b708c91fcd7f9379a","impliedFormat":1},{"version":"c9ef74c64ed051ea5b958621e7fb853fe3b56e8787c1587aefc6ea988b3c7e79","impliedFormat":1},{"version":"2462ccfac5f3375794b861abaa81da380f1bbd9401de59ffa43119a0b644253d","impliedFormat":1},{"version":"34baf65cfee92f110d6653322e2120c2d368ee64b3c7981dff08ed105c4f19b0","impliedFormat":1},{"version":"58e0cee50add50d4b6d47a935e26aeb0080d98c9cf729f8af389511cdfa10526","impliedFormat":1},{"version":"b0d10e46cfe3f6c476b69af02eaa38e4ccc7430221ce3109ae84bb9fb8282298","impliedFormat":1},{"version":"75fa6a9be075402ea969c1fcec4bb1421f72efbc3e2f340032684cdd3115197c","impliedFormat":1},{"version":"c516a2b18ec68ce5281d7f90113f9be11c7800a859e52292ec7d6a5c13d0465b","impliedFormat":1}],"root":[[65,118]],"options":{"declaration":true,"declarationMap":true,"downlevelIteration":false,"emitDeclarationOnly":true,"emitDecoratorMetadata":true,"esModuleInterop":true,"experimentalDecorators":true,"module":199,"outDir":"./","rootDir":"../..","skipLibCheck":true,"sourceMap":true,"strict":false,"strictNullChecks":false,"target":99},"fileIdsList":[[99,103,104,105,106,108,111,117,171],[119,171],[171],[171,185],[119,120,121,122,123,171],[119,121,171],[142,171,178],[171,180],[171,181],[171,187,190],[125,171],[128,171],[129,134,162,171],[130,141,142,149,159,170,171],[130,131,141,149,171],[132,171],[133,134,142,150,171],[134,159,167,171],[135,137,141,149,171],[136,171],[137,138,171],[141,171],[139,141,171],[141,142,143,159,170,171],[141,142,143,156,159,162,171],[171,175],[137,141,144,149,159,170,171],[141,142,144,145,149,159,167,170,171],[144,146,159,167,170,171],[125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177],[141,147,171],[148,170,171,175],[137,141,149,159,171],[150,171],[151,171],[128,152,171],[153,169,171,175],[154,171],[155,171],[141,156,157,171],[156,158,171,173],[129,141,159,160,161,162,171],[129,159,161,171],[159,160,171],[162,171],[163,171],[128,159,171],[141,165,166,171],[165,166,171],[134,149,159,167,171],[168,171],[149,169,171],[129,144,155,170,171],[134,171],[159,171,172],[148,171,173],[171,174],[129,134,141,143,152,159,170,171,173,175],[159,171,176],[171,194,233],[171,194,218,233],[171,233],[171,194],[171,194,219,233],[171,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232],[171,219,233],[171,235],[171,183,189],[171,187],[171,184,188],[171,186],[68,72,73,77,78,80,81,171],[72,73,74,79,80,81,171],[68,72,73,75,79,80,81,171],[112,113,115,116,171],[72,73,79,114,171],[73,79,80,81,83,171],[109,110,171],[73,75,78,79,80,81,171],[75,171],[67,171],[67,68,69,73,74,171],[72,73,171],[68,74,75,76,78,171],[68,72,73,74,75,77,78,79,80,81,83,98,171],[68,70,74,171],[65,68,171],[68,171],[67,68,171],[67,68,70,71,73,171],[68,72,73,74,75,77,78,79,81,171],[68,72,73,74,75,77,78,80,171],[65,66,68,171],[68,72,73,74,75,77,81,171],[68,73,79,82,171],[68,72,73,78,86,89,97,171],[68,72,171],[85,86,87,88,95,100,103,171],[86,171],[68,73,84,85,171],[87,88,96,171],[68,72,73,77,81,84,85,86,87,88,89,97,98,171],[101,102,171],[72,73,80,85,86,87,88,96,98,100,171],[68,72,80,84,85,87,88,96,98,100,171],[96,171],[92,96,171],[107,171],[91,171],[68,90,96,171],[68,96,171],[89,92,93,94,96,97,171],[72,73,93,171],[72,73,87,88,89,90,91,92,93,94,95,97,171],[87,96,171],[68,88,171],[99,103,104,105,106,108,111,117],[78,80,81],[80,81],[112,113,115,116],[109,110],[75],[67],[67,68,74],[72],[68,74,78],[68,72,73,74,75,77,78,79,80,81,83,98],[68,70,74],[65,68],[68],[67,68],[68,70,71],[68,74,78,81],[68,74,78,80],[68,81],[68,78,86,89,97],[85,86,87,88,95,100,103],[86],[68,84],[87,88,96],[87,88,89,97],[101,102],[80,86,87,88,96,100],[68,80,87,88,96,100],[96],[92,96],[107],[91],[90,96],[89,92,93,94,96,97],[73,93],[89,90,92,93,94,97],[87,96],[88]],"referencedMap":[[118,1],[121,2],[119,3],[183,3],[186,4],[185,3],[124,5],[120,2],[122,6],[123,2],[179,7],[180,3],[181,8],[182,9],[191,10],[192,3],[193,3],[125,11],[126,11],[128,12],[129,13],[130,14],[131,15],[132,16],[133,17],[134,18],[135,19],[136,20],[137,21],[138,21],[140,22],[139,23],[141,22],[142,24],[143,25],[127,26],[177,3],[144,27],[145,28],[146,29],[178,30],[147,31],[148,32],[149,33],[150,34],[151,35],[152,36],[153,37],[154,38],[155,39],[156,40],[157,40],[158,41],[159,42],[161,43],[160,44],[162,45],[163,46],[164,47],[165,48],[166,49],[167,50],[168,51],[169,52],[170,53],[171,54],[172,55],[173,56],[174,57],[175,58],[176,59],[218,60],[219,61],[194,62],[197,62],[216,60],[217,60],[207,60],[206,63],[204,60],[199,60],[212,60],[210,60],[214,60],[198,60],[211,60],[215,60],[200,60],[201,60],[213,60],[195,60],[202,60],[203,60],[205,60],[209,60],[220,64],[208,60],[196,60],[233,65],[232,3],[227,64],[229,66],[228,64],[221,64],[222,64],[224,64],[226,64],[230,66],[231,66],[223,66],[225,66],[234,3],[235,3],[236,67],[184,3],[190,68],[188,69],[189,70],[187,71],[63,3],[64,3],[12,3],[14,3],[13,3],[2,3],[15,3],[16,3],[17,3],[18,3],[19,3],[20,3],[21,3],[22,3],[3,3],[4,3],[23,3],[27,3],[24,3],[25,3],[26,3],[28,3],[29,3],[30,3],[5,3],[31,3],[32,3],[33,3],[34,3],[6,3],[38,3],[35,3],[36,3],[37,3],[39,3],[7,3],[40,3],[45,3],[46,3],[41,3],[42,3],[43,3],[44,3],[8,3],[50,3],[47,3],[48,3],[49,3],[51,3],[9,3],[52,3],[53,3],[54,3],[57,3],[55,3],[56,3],[58,3],[59,3],[10,3],[1,3],[11,3],[62,3],[61,3],[60,3],[114,3],[112,72],[116,73],[113,74],[117,75],[115,76],[110,77],[111,78],[109,79],[82,3],[70,80],[68,81],[75,82],[76,83],[77,84],[72,3],[99,85],[71,86],[66,87],[65,88],[69,89],[74,90],[80,91],[81,92],[79,3],[67,93],[78,94],[83,95],[98,96],[73,97],[104,98],[88,99],[85,3],[86,100],[84,3],[100,101],[95,102],[103,103],[101,104],[102,105],[87,99],[92,106],[107,107],[108,108],[93,3],[106,109],[91,110],[90,111],[105,112],[94,113],[96,114],[97,115],[89,116]],"exportedModulesMap":[[118,117],[121,2],[119,3],[183,3],[186,4],[185,3],[124,5],[120,2],[122,6],[123,2],[179,7],[180,3],[181,8],[182,9],[191,10],[192,3],[193,3],[125,11],[126,11],[128,12],[129,13],[130,14],[131,15],[132,16],[133,17],[134,18],[135,19],[136,20],[137,21],[138,21],[140,22],[139,23],[141,22],[142,24],[143,25],[127,26],[177,3],[144,27],[145,28],[146,29],[178,30],[147,31],[148,32],[149,33],[150,34],[151,35],[152,36],[153,37],[154,38],[155,39],[156,40],[157,40],[158,41],[159,42],[161,43],[160,44],[162,45],[163,46],[164,47],[165,48],[166,49],[167,50],[168,51],[169,52],[170,53],[171,54],[172,55],[173,56],[174,57],[175,58],[176,59],[218,60],[219,61],[194,62],[197,62],[216,60],[217,60],[207,60],[206,63],[204,60],[199,60],[212,60],[210,60],[214,60],[198,60],[211,60],[215,60],[200,60],[201,60],[213,60],[195,60],[202,60],[203,60],[205,60],[209,60],[220,64],[208,60],[196,60],[233,65],[232,3],[227,64],[229,66],[228,64],[221,64],[222,64],[224,64],[226,64],[230,66],[231,66],[223,66],[225,66],[234,3],[235,3],[236,67],[184,3],[190,68],[188,69],[189,70],[187,71],[63,3],[64,3],[12,3],[14,3],[13,3],[2,3],[15,3],[16,3],[17,3],[18,3],[19,3],[20,3],[21,3],[22,3],[3,3],[4,3],[23,3],[27,3],[24,3],[25,3],[26,3],[28,3],[29,3],[30,3],[5,3],[31,3],[32,3],[33,3],[34,3],[6,3],[38,3],[35,3],[36,3],[37,3],[39,3],[7,3],[40,3],[45,3],[46,3],[41,3],[42,3],[43,3],[44,3],[8,3],[50,3],[47,3],[48,3],[49,3],[51,3],[9,3],[52,3],[53,3],[54,3],[57,3],[55,3],[56,3],[58,3],[59,3],[10,3],[1,3],[11,3],[62,3],[61,3],[60,3],[112,118],[116,119],[113,119],[117,120],[110,119],[111,121],[109,119],[70,122],[68,123],[75,124],[76,125],[77,126],[99,127],[71,128],[66,129],[65,130],[69,131],[74,132],[80,133],[81,134],[67,129],[78,135],[83,130],[98,136],[73,130],[104,137],[88,138],[86,139],[100,140],[95,141],[103,142],[101,143],[102,144],[87,138],[92,145],[107,146],[108,147],[106,148],[91,149],[90,145],[105,150],[94,151],[96,152],[97,153],[89,154]],"semanticDiagnosticsPerFile":[118,121,119,183,186,185,124,120,122,123,179,180,181,182,191,192,193,125,126,128,129,130,131,132,133,134,135,136,137,138,140,139,141,142,143,127,177,144,145,146,178,147,148,149,150,151,152,153,154,155,156,157,158,159,161,160,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,218,219,194,197,216,217,207,206,204,199,212,210,214,198,211,215,200,201,213,195,202,203,205,209,220,208,196,233,232,227,229,228,221,222,224,226,230,231,223,225,234,235,236,184,190,188,189,187,63,64,12,14,13,2,15,16,17,18,19,20,21,22,3,4,23,27,24,25,26,28,29,30,5,31,32,33,34,6,38,35,36,37,39,7,40,45,46,41,42,43,44,8,50,47,48,49,51,9,52,53,54,57,55,56,58,59,10,1,11,62,61,60,114,112,116,113,117,115,110,111,109,82,70,68,75,76,77,72,99,71,66,65,69,74,80,81,79,67,78,83,98,73,104,88,85,86,84,100,95,103,101,102,87,92,107,108,93,106,91,90,105,94,96,97,89]},"version":"5.2.2"}
|
|
1
|
+
{"program":{"fileNames":["../../node_modules/typescript/lib/lib.es5.d.ts","../../node_modules/typescript/lib/lib.es2015.d.ts","../../node_modules/typescript/lib/lib.es2016.d.ts","../../node_modules/typescript/lib/lib.es2017.d.ts","../../node_modules/typescript/lib/lib.es2018.d.ts","../../node_modules/typescript/lib/lib.es2019.d.ts","../../node_modules/typescript/lib/lib.es2020.d.ts","../../node_modules/typescript/lib/lib.es2021.d.ts","../../node_modules/typescript/lib/lib.es2022.d.ts","../../node_modules/typescript/lib/lib.es2023.d.ts","../../node_modules/typescript/lib/lib.esnext.d.ts","../../node_modules/typescript/lib/lib.dom.d.ts","../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../node_modules/typescript/lib/lib.es2017.date.d.ts","../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../node_modules/typescript/lib/lib.es2022.array.d.ts","../../node_modules/typescript/lib/lib.es2022.error.d.ts","../../node_modules/typescript/lib/lib.es2022.intl.d.ts","../../node_modules/typescript/lib/lib.es2022.object.d.ts","../../node_modules/typescript/lib/lib.es2022.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2022.string.d.ts","../../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../node_modules/typescript/lib/lib.es2023.array.d.ts","../../node_modules/typescript/lib/lib.es2023.collection.d.ts","../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../node_modules/typescript/lib/lib.esnext.disposable.d.ts","../../node_modules/typescript/lib/lib.esnext.decorators.d.ts","../../node_modules/typescript/lib/lib.decorators.d.ts","../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../src/primitives/mersenne.ts","../../src/primitives/k256.ts","../../src/primitives/reductioncontext.ts","../../src/primitives/bignumber.ts","../../src/primitives/montgomorymethod.ts","../../src/primitives/basepoint.ts","../../src/primitives/jacobianpoint.ts","../../src/primitives/hash.ts","../../src/primitives/utils.ts","../../src/primitives/point.ts","../../src/primitives/curve.ts","../../src/primitives/drbg.ts","../../src/primitives/ecdsa.ts","../../src/primitives/signature.ts","../../src/primitives/random.ts","../../src/primitives/privatekey.ts","../../src/primitives/publickey.ts","../../src/primitives/aesgcm.ts","../../src/primitives/symmetrickey.ts","../../src/script/scriptchunk.ts","../../src/script/op.ts","../../src/script/script.ts","../../src/script/unlockingscript.ts","../../src/script/lockingscript.ts","../../src/transaction/transactionoutput.ts","../../src/transaction/feemodel.ts","../../src/transaction/fee-models/satoshisperkilobyte.ts","../../src/transaction/broadcaster.ts","../../src/transaction/chaintracker.ts","../../src/transaction/merklepath.ts","../../src/script/spend.ts","../../src/transaction/transaction.ts","../../src/transaction/transactioninput.ts","../../src/primitives/transactionsignature.ts","../../src/primitives/index.ts","../../src/script/scripttemplate.ts","../../src/script/templates/p2pkh.ts","../../src/script/templates/rpuzzle.ts","../../src/script/templates/index.ts","../../src/script/index.ts","../../src/transaction/index.ts","../../src/transaction/fee-models/index.ts","../../src/transaction/broadcasters/arc.ts","../../src/transaction/broadcasters/index.ts","../../src/messages/signedmessage.ts","../../src/messages/encryptedmessage.ts","../../src/messages/index.ts","../../src/compat/bsm.ts","../../src/compat/hd.ts","../../src/compat/bip-39-wordlist-en.ts","../../src/compat/mnemonic.ts","../../src/compat/ecies.ts","../../src/compat/index.ts","../../mod.ts","../../node_modules/@babel/types/lib/index.d.ts","../../node_modules/@types/babel__generator/index.d.ts","../../node_modules/@babel/parser/typings/babel-parser.d.ts","../../node_modules/@types/babel__template/index.d.ts","../../node_modules/@types/babel__traverse/index.d.ts","../../node_modules/@types/babel__core/index.d.ts","../../node_modules/@types/node/assert.d.ts","../../node_modules/@types/node/assert/strict.d.ts","../../node_modules/@types/node/globals.d.ts","../../node_modules/@types/node/async_hooks.d.ts","../../node_modules/@types/node/buffer.d.ts","../../node_modules/@types/node/child_process.d.ts","../../node_modules/@types/node/cluster.d.ts","../../node_modules/@types/node/console.d.ts","../../node_modules/@types/node/constants.d.ts","../../node_modules/@types/node/crypto.d.ts","../../node_modules/@types/node/dgram.d.ts","../../node_modules/@types/node/diagnostics_channel.d.ts","../../node_modules/@types/node/dns.d.ts","../../node_modules/@types/node/dns/promises.d.ts","../../node_modules/@types/node/domain.d.ts","../../node_modules/@types/node/dom-events.d.ts","../../node_modules/@types/node/events.d.ts","../../node_modules/@types/node/fs.d.ts","../../node_modules/@types/node/fs/promises.d.ts","../../node_modules/@types/node/http.d.ts","../../node_modules/@types/node/http2.d.ts","../../node_modules/@types/node/https.d.ts","../../node_modules/@types/node/inspector.d.ts","../../node_modules/@types/node/module.d.ts","../../node_modules/@types/node/net.d.ts","../../node_modules/@types/node/os.d.ts","../../node_modules/@types/node/path.d.ts","../../node_modules/@types/node/perf_hooks.d.ts","../../node_modules/@types/node/process.d.ts","../../node_modules/@types/node/punycode.d.ts","../../node_modules/@types/node/querystring.d.ts","../../node_modules/@types/node/readline.d.ts","../../node_modules/@types/node/readline/promises.d.ts","../../node_modules/@types/node/repl.d.ts","../../node_modules/@types/node/stream.d.ts","../../node_modules/@types/node/stream/promises.d.ts","../../node_modules/@types/node/stream/consumers.d.ts","../../node_modules/@types/node/stream/web.d.ts","../../node_modules/@types/node/string_decoder.d.ts","../../node_modules/@types/node/test.d.ts","../../node_modules/@types/node/timers.d.ts","../../node_modules/@types/node/timers/promises.d.ts","../../node_modules/@types/node/tls.d.ts","../../node_modules/@types/node/trace_events.d.ts","../../node_modules/@types/node/tty.d.ts","../../node_modules/@types/node/url.d.ts","../../node_modules/@types/node/util.d.ts","../../node_modules/@types/node/v8.d.ts","../../node_modules/@types/node/vm.d.ts","../../node_modules/@types/node/wasi.d.ts","../../node_modules/@types/node/worker_threads.d.ts","../../node_modules/@types/node/zlib.d.ts","../../node_modules/@types/node/globals.global.d.ts","../../node_modules/@types/node/index.d.ts","../../node_modules/@types/graceful-fs/index.d.ts","../../node_modules/@types/istanbul-lib-coverage/index.d.ts","../../node_modules/@types/istanbul-lib-report/index.d.ts","../../node_modules/@types/istanbul-reports/index.d.ts","../../node_modules/@jest/expect-utils/build/index.d.ts","../../node_modules/chalk/index.d.ts","../../node_modules/@sinclair/typebox/typebox.d.ts","../../node_modules/@jest/schemas/build/index.d.ts","../../node_modules/pretty-format/build/index.d.ts","../../node_modules/jest-diff/build/index.d.ts","../../node_modules/jest-matcher-utils/build/index.d.ts","../../node_modules/expect/build/index.d.ts","../../node_modules/@types/jest/index.d.ts","../../node_modules/@types/json-schema/index.d.ts","../../node_modules/@types/json5/index.d.ts","../../node_modules/@types/semver/classes/semver.d.ts","../../node_modules/@types/semver/functions/parse.d.ts","../../node_modules/@types/semver/functions/valid.d.ts","../../node_modules/@types/semver/functions/clean.d.ts","../../node_modules/@types/semver/functions/inc.d.ts","../../node_modules/@types/semver/functions/diff.d.ts","../../node_modules/@types/semver/functions/major.d.ts","../../node_modules/@types/semver/functions/minor.d.ts","../../node_modules/@types/semver/functions/patch.d.ts","../../node_modules/@types/semver/functions/prerelease.d.ts","../../node_modules/@types/semver/functions/compare.d.ts","../../node_modules/@types/semver/functions/rcompare.d.ts","../../node_modules/@types/semver/functions/compare-loose.d.ts","../../node_modules/@types/semver/functions/compare-build.d.ts","../../node_modules/@types/semver/functions/sort.d.ts","../../node_modules/@types/semver/functions/rsort.d.ts","../../node_modules/@types/semver/functions/gt.d.ts","../../node_modules/@types/semver/functions/lt.d.ts","../../node_modules/@types/semver/functions/eq.d.ts","../../node_modules/@types/semver/functions/neq.d.ts","../../node_modules/@types/semver/functions/gte.d.ts","../../node_modules/@types/semver/functions/lte.d.ts","../../node_modules/@types/semver/functions/cmp.d.ts","../../node_modules/@types/semver/functions/coerce.d.ts","../../node_modules/@types/semver/classes/comparator.d.ts","../../node_modules/@types/semver/classes/range.d.ts","../../node_modules/@types/semver/functions/satisfies.d.ts","../../node_modules/@types/semver/ranges/max-satisfying.d.ts","../../node_modules/@types/semver/ranges/min-satisfying.d.ts","../../node_modules/@types/semver/ranges/to-comparators.d.ts","../../node_modules/@types/semver/ranges/min-version.d.ts","../../node_modules/@types/semver/ranges/valid.d.ts","../../node_modules/@types/semver/ranges/outside.d.ts","../../node_modules/@types/semver/ranges/gtr.d.ts","../../node_modules/@types/semver/ranges/ltr.d.ts","../../node_modules/@types/semver/ranges/intersects.d.ts","../../node_modules/@types/semver/ranges/simplify.d.ts","../../node_modules/@types/semver/ranges/subset.d.ts","../../node_modules/@types/semver/internals/identifiers.d.ts","../../node_modules/@types/semver/index.d.ts","../../node_modules/@types/stack-utils/index.d.ts","../../node_modules/@types/yargs-parser/index.d.ts","../../node_modules/@types/yargs/index.d.ts"],"fileInfos":[{"version":"2ac9cdcfb8f8875c18d14ec5796a8b029c426f73ad6dc3ffb580c228b58d1c44","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"dc48272d7c333ccf58034c0026162576b7d50ea0e69c3b9292f803fc20720fd5","impliedFormat":1},{"version":"9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"5514e54f17d6d74ecefedc73c504eadffdeda79c7ea205cf9febead32d45c4bc","impliedFormat":1},{"version":"1c0cdb8dc619bc549c3e5020643e7cf7ae7940058e8c7e5aefa5871b6d86f44b","impliedFormat":1},{"version":"bed7b7ba0eb5a160b69af72814b4dde371968e40b6c5e73d3a9f7bee407d158c","impliedFormat":1},{"version":"0075fa5ceda385bcdf3488e37786b5a33be730e8bc4aa3cf1e78c63891752ce8","affectsGlobalScope":true,"impliedFormat":1},{"version":"f296963760430fb65b4e5d91f0ed770a91c6e77455bacf8fa23a1501654ede0e","affectsGlobalScope":true,"impliedFormat":1},{"version":"09226e53d1cfda217317074a97724da3e71e2c545e18774484b61562afc53cd2","affectsGlobalScope":true,"impliedFormat":1},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true,"impliedFormat":1},{"version":"8b41361862022eb72fcc8a7f34680ac842aca802cf4bc1f915e8c620c9ce4331","affectsGlobalScope":true,"impliedFormat":1},{"version":"f7bd636ae3a4623c503359ada74510c4005df5b36de7f23e1db8a5c543fd176b","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"0c20f4d2358eb679e4ae8a4432bdd96c857a2960fd6800b21ec4008ec59d60ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true,"impliedFormat":1},{"version":"82d0d8e269b9eeac02c3bd1c9e884e85d483fcb2cd168bccd6bc54df663da031","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"b8deab98702588840be73d67f02412a2d45a417a3c097b2e96f7f3a42ac483d1","affectsGlobalScope":true,"impliedFormat":1},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"376d554d042fb409cb55b5cbaf0b2b4b7e669619493c5d18d5fa8bd67273f82a","affectsGlobalScope":true,"impliedFormat":1},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true,"impliedFormat":1},{"version":"c4138a3dd7cd6cf1f363ca0f905554e8d81b45844feea17786cdf1626cb8ea06","affectsGlobalScope":true,"impliedFormat":1},{"version":"6ff3e2452b055d8f0ec026511c6582b55d935675af67cdb67dd1dc671e8065df","affectsGlobalScope":true,"impliedFormat":1},{"version":"03de17b810f426a2f47396b0b99b53a82c1b60e9cba7a7edda47f9bb077882f4","affectsGlobalScope":true,"impliedFormat":1},{"version":"8184c6ddf48f0c98429326b428478ecc6143c27f79b79e85740f17e6feb090f1","affectsGlobalScope":true,"impliedFormat":1},{"version":"261c4d2cf86ac5a89ad3fb3fafed74cbb6f2f7c1d139b0540933df567d64a6ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"6af1425e9973f4924fca986636ac19a0cf9909a7e0d9d3009c349e6244e957b6","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"15a630d6817718a2ddd7088c4f83e4673fde19fa992d2eae2cf51132a302a5d3","affectsGlobalScope":true,"impliedFormat":1},{"version":"b7e9f95a7387e3f66be0ed6db43600c49cec33a3900437ce2fd350d9b7cb16f2","affectsGlobalScope":true,"impliedFormat":1},{"version":"01e0ee7e1f661acedb08b51f8a9b7d7f959e9cdb6441360f06522cc3aea1bf2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac17a97f816d53d9dd79b0d235e1c0ed54a8cc6a0677e9a3d61efb480b2a3e4e","affectsGlobalScope":true,"impliedFormat":1},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true,"impliedFormat":1},{"version":"ec0104fee478075cb5171e5f4e3f23add8e02d845ae0165bfa3f1099241fa2aa","affectsGlobalScope":true,"impliedFormat":1},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true,"impliedFormat":1},{"version":"9cc66b0513ad41cb5f5372cca86ef83a0d37d1c1017580b7dace3ea5661836df","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"709efdae0cb5df5f49376cde61daacc95cdd44ae4671da13a540da5088bf3f30","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"bc496ef4377553e461efcf7cc5a5a57cf59f9962aea06b5e722d54a36bf66ea1","affectsGlobalScope":true,"impliedFormat":1},{"version":"038a2f66a34ee7a9c2fbc3584c8ab43dff2995f8c68e3f566f4c300d2175e31e","affectsGlobalScope":true,"impliedFormat":1},{"version":"4fa6ed14e98aa80b91f61b9805c653ee82af3502dc21c9da5268d3857772ca05","affectsGlobalScope":true,"impliedFormat":1},{"version":"f5c92f2c27b06c1a41b88f6db8299205aee52c2a2943f7ed29bd585977f254e8","affectsGlobalScope":true,"impliedFormat":1},{"version":"930b0e15811f84e203d3c23508674d5ded88266df4b10abee7b31b2ac77632d2","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"b9ea5778ff8b50d7c04c9890170db34c26a5358cccba36844fe319f50a43a61a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"50d53ccd31f6667aff66e3d62adf948879a3a16f05d89882d1188084ee415bbc","affectsGlobalScope":true,"impliedFormat":1},{"version":"65be38e881453e16f128a12a8d36f8b012aa279381bf3d4dc4332a4905ceec83","affectsGlobalScope":true,"impliedFormat":1},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"307c8b7ebbd7f23a92b73a4c6c0a697beca05b06b036c23a34553e5fe65e4fdc","affectsGlobalScope":true,"impliedFormat":1},{"version":"e1913f656c156a9e4245aa111fbb436d357d9e1fe0379b9a802da7fe3f03d736","affectsGlobalScope":true,"impliedFormat":1},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","affectsGlobalScope":true,"impliedFormat":1},{"version":"f35a831e4f0fe3b3697f4a0fe0e3caa7624c92b78afbecaf142c0f93abfaf379","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"78f8232f29ca77721f9dd9798c3bef83599c9256fd1d5d541e652151c433e8af","signature":"50edbdea74283a6a7ddcbb361a4bce2ce2758e36438d383ce098242e0704d127","impliedFormat":99},{"version":"6416da52b472e7716f6d73f113c2f0a6cb3e711ad426391e5da49b1d08f442f0","signature":"593b34ef08bbe1d1487f544c04877dfe157abb2eee9f315cbf0deed02c5f1c58","impliedFormat":99},{"version":"3e4458c644bbcd8326c7a68713649aa58aae5458718ba09b14a432d851be0c17","signature":"8d3b45a44034c5907cd25313ffbb45126162be336997abbe817995085b7c91e8","impliedFormat":99},{"version":"3332d6e010d88bb833013a6f0b44c44727723ea3748136255a2f4ca5154693cc","signature":"7e579ec417c04af9841a76f87998113f0e26fe6d9764df9fc51848c6bdd095a9","impliedFormat":99},{"version":"dfb041cdbc325167423bba5cbc2bafee4c8dfe9cf626cb2c26e093996cdd831a","signature":"dcc470a07014537380b3ef3a2559984387e724b09384262dfb5ee8ca3d72089e","impliedFormat":99},{"version":"7ed23712e507754ca8736d5fc03dbc63a361b9d3d86987a0c58997b01e5ee6c1","signature":"91cb63b3196af7837bd6688a562f7f83853f9efff037a8ace21dbabf9ce59f9d","impliedFormat":99},{"version":"249db36e6cb9720a6637023c32a631bd51d1963632e81bf6dd916ebb56587068","signature":"47ff6368d2a381cd0a8f84cd2c5f5373ad1bb5562ee36e0e9f6d41e7cf4d7504","impliedFormat":99},{"version":"e13901e732c8c6246261df6e14d27058e9987e9b6b8d9e6367ecfb25f2a333c7","signature":"5d7cd5930e8c759909a21f99d12e048a9f4b02644b34d11852b89fbbff7c2821","impliedFormat":99},{"version":"4a37bbbd57d83eda137b161115805a3b45686f250631b620443bdf7cb32987ea","signature":"83416caad55c5018f13cfb0f09e6bdb16442e265c526c4e3edd89c4977acc97e","impliedFormat":99},{"version":"cea9678b9ca54f0993e85496473102730aa4192787199ad570778dcf832d96f6","signature":"3ff3f5a09212d7f7c9b2392010fe0da9040d40225fc771e7d1fae45b195a7275","impliedFormat":99},{"version":"6c66acf0025a9390a5d95c2ae91292012af1c981f473259698034ae0746121cb","signature":"972d058fabef5ec414cdb970b406137505012061d22a818d0bafd59b1d7fc304","impliedFormat":99},{"version":"96f15af13b5ccc67f59859419651a1a76758569a17d6049fef125b7325141f72","signature":"2a99656d7ebc39ddcd66c7313adfeee9b5f988cede55b0f41ddd917fbbb5ee08","impliedFormat":99},{"version":"26cfff17491885f257da38b4344ed24b41f89beeb08eafa820401f49622e0650","signature":"dff2ba9b0c494459fd33d5f99e0f2722b5c6652758eb149e82395b7f1f0769ca","impliedFormat":99},{"version":"3df8910b430d36797379eaa988af44428887456344c5d067d03ecd2abb808613","signature":"43d0f31d94189cb00daead423d25cfacdb03a3ec24be485e1b329612ad0793a1","impliedFormat":99},{"version":"1cf2798fa1fe373bddfc3cbe18c1fdb66cbc054b7c09d0354df6d02b1e684938","signature":"d7520ad8621111bb484bd4fcf06ec19c8f5c2dcfa938d41a0288d59b15fd1930","impliedFormat":99},{"version":"798a825af85f10f2fa19199960eee337c7608cb2f5c5732979ce193b3da76057","signature":"50a7d4054a05a8b088e8560f37a8335b79e83435b4539fcd860b6d03bfe2c7ea","impliedFormat":99},{"version":"1b9dbca0505d6196186c27f398db0eb753a535b96db74eace8a6b1e0c6f3a511","signature":"6fa752678e962e6050f5c871b83d893aa55b60f815e17b566bbdd409572eaeb9","impliedFormat":99},{"version":"1f8781fe6d5f2e0cf355f0732e0a8c7b076197bb00dfb03ad043df80d9acd7ca","signature":"0992219a550bfdfd60098cd695d68b43f531e2bb24215281378c01a093d281d8","impliedFormat":99},{"version":"b2727cfc6afb1eb769535ab2a8b2c3bf418fc46141d7adb4fc1ee385f0239ac3","signature":"00ca19acf737096a1e6984e383e9f115a3a43619e43788892a554e189ec0e8c5","impliedFormat":99},{"version":"fbd8484c24a187875194878aeacfc32daef9d0ae4f1eb8ce31b355e2d3df8c66","signature":"46c0230476c149252b9eddf0a97d521a5af223e497c76d349537a0fe84869cdc","impliedFormat":99},{"version":"3d150b9fdeb12ad8448ca768b5ef95cb683adddaeb2185546f7961a2bc8d643c","signature":"dbfc8224f4e3c3881c6bbf339bfc57e5977f5171d2ae2534fcf21c747e663587","impliedFormat":99},{"version":"c81945297ce96f2034aba540d3806cac5eaadec9493a4d42682b6ae17b50c30a","signature":"22a3b38628a77dd1023eba939b991357ccbc85ae67d31014cf5c0d7632b9f251","impliedFormat":99},{"version":"a613c66badc56f604d3b1ce2cbb18e82b668d8d03850d182978234cd89084afb","signature":"30072e54d199fb4007c422ee88003cbd1b9fb755b8e2bdfef50543706d7ecf3d","impliedFormat":99},{"version":"079d6f434bf32684499d1dac9e7eb2dbb55b837a3560361a9c098828ae789f06","signature":"c4b26ce240c1eea17878c80a29d66bae16bbd3a07e98e034ea2e6813a186ebfc","impliedFormat":99},{"version":"1212ecc67913ad47a321ee21b0522d88b8026cb269b28f7215984dd98f2bbb79","signature":"768d6fbec410216bfef9030b317eee914b19081c9905fc727401bc28e70d6ec5","impliedFormat":99},{"version":"387ccdb4ba57cbe3081944a3c29ff1f20da0db3132a4c046f57682141107835d","signature":"1913c2a3aab411553472debac3779ee8731335b9210389653eb0890736a064fe","impliedFormat":99},{"version":"5e7baebaf3b2a064fe9cb52d74be5d0c4709e4e5b3a5abff4594d92bb90242ed","signature":"4f2a15d6f9061c0c49a9df3185fe62c9088ea9c9731fd8acce2de9117e2a704c","impliedFormat":99},{"version":"7b9e5e6c0dd3defceba4eaeac3d3bfc11feb043fe6bcea6d1084c6d8536c3783","signature":"fa0ac76995ef90f3547bedc38f054ed04fd0d1e84009fd28f0a8a5b0bea85cc0","impliedFormat":99},{"version":"6e6e78d8a49e1fedd8977995535b11eb7826cdc58bb3aa345cc0cfb0751178bd","signature":"7bc83750744e6d7924e4b16e8e8d9272b1dbad685e4463b6f39a7b7dd336e833","impliedFormat":99},{"version":"e96b6dbca345b90e3eeeb0a0841fad4348a4872e299d75d17eab4011f754e0ec","signature":"dd36329202774e2f32f3f5c0b2801b3c85ec43495e85bf4f2bee681597b5b5c8","impliedFormat":99},{"version":"d18f4c6fa293a578c6e4be59ce42cad07bf9d764a565260121b127a6a1cad640","signature":"af54a292d3c6f475caa487f428e1a8ff009bef631e27781fca60bd103e8e3df2","impliedFormat":99},{"version":"74c2016a6c0ebfc982c29a22af12f06663a43150e38f4d0147aaf57a2a333157","signature":"fd584315ef1c06b7828c2eaa68ac5f1a7053097f7bb4a4d9d8cd234166e02971","impliedFormat":99},{"version":"c59c9abbee35c374c0885c92c88340f361ffbd9892fcba86371ce0a8eb34feb2","signature":"8836e3fe0e061ae6c734e22ac66a0f4c45357e4f084b5373e09607c7cd493028","impliedFormat":99},{"version":"40a199af3234d69e71cbf02085498d96370248c50b304af8defc018281a9130c","signature":"3c985fba23832986f09a0914938a1f242199c49cad3527d051bfbfb6fc6f74d5","impliedFormat":99},{"version":"0a7360a92456060fad9377aa0186c5af52600f1ef25f079c67317a4e2a371777","signature":"73a4eeda6bc23a9bba474dedb147ffd5a8c0c1b30851ab262d273f28e613f102","impliedFormat":99},{"version":"47d5f7f756838f6fbaf8ed654cf49371591b11e64600b0b57ea36af597db8115","signature":"60412be999ab2254a0b4105ff71c5899fd3448c4d8a0ff49fe759a2841792be7","impliedFormat":99},{"version":"4b7e00befc9378ee0eb1526fe1a619342e286b2da1b454855cac9ac4afa0be74","signature":"4a921b58051b16feffbd36db31e9cd858d8fa366c0a193a7e7e72b3269a7ddd1","impliedFormat":99},{"version":"f1ea032ce43f538d9839d593e1cdd2b0ad036d3185181fcfc120c2ac8212e0d7","signature":"4723fd0b8862465cc3a15305344af29b572ef487cb39964794725ed9bba70b0c","impliedFormat":99},{"version":"b0a0340f70f627ca7b21f85556aab7656cf3c61b75f6abf6cce2f0ed2ec546ab","signature":"d078842ad92a23fd2feb478dc828d48472e69b405342a4e88bad99c6e65dbe29","impliedFormat":99},{"version":"3999a66ef491e34e1a1d864920c4c45f2f189def5808fba1082a77a9c3f5f022","signature":"70bf2b0acc6cc975444f886615ec7d44795644eb9f9a99da42c4c20e7c6c386c","impliedFormat":99},{"version":"14267dae5068bc996063cd7acdc9610327383580fe2c3d355957158eaf384884","signature":"0f325f8471a75d8a662840ff5eedd2fd038d7ad960612d703b1ba3cc57074bd9","impliedFormat":99},{"version":"7a53dde9117e238bc8431695b98954836a3a4178239caba3874bea0d56563bad","signature":"e1732408cb69ca45bbbe0cda5ba4e248707ddcf50adcb5f9864000a74224fad9","impliedFormat":99},{"version":"26203a38661428297ee7e864b40390b752975cadfd9284f364ccbb99da8ef5c2","signature":"963288b52d554cd1b63746cdb04e129ef81d41558bbbce384e1719137cf54602","impliedFormat":99},{"version":"78f1b4e76ee43ef381876fd8e20812d00000946818dba2a00986b05e3f9ff83f","signature":"be433098468027759291ac5b449655dedbf0ea1c1e3c0ffea87b0af50cc26837","impliedFormat":99},{"version":"0c5484b6012ff64658956901c1e0be5ff702d4fc63b9820e57a42e8259be19a7","signature":"391158f9180951ec4af103e34d2243ac9ce31c1eeef6cd6eac4755a86b73af33","impliedFormat":99},{"version":"9f242994e47e57870b9df723d69ed7abc5fc36c620d610edce99aff8f3536999","signature":"c6a51ab4d7691202f12dfa90944af70e7ec00bdeea05697b4ca8b616f5795246","impliedFormat":99},{"version":"9f8fc8bb76f9e7afed282bfac56f836ed07fe8f2d34ccfeefa5021152d01944d","signature":"a83755673215e98d6897bf61b9817aceaf00a70a50c23c6020933455efa97a65","impliedFormat":99},{"version":"772f75fe08a0e352a42d8229647ee8a2219be9eb78cee420f44507eeb5d530b9","signature":"98a6d82adbaa1ce57b2e6d8683a0becb828164c6ca05b1a855177a5ad77f9bf4","impliedFormat":99},{"version":"b92dfc8729dc5886276c28e7654e97262a040b18f4dff8c8d834e25154fcde9f","signature":"d5abc7a8bc185d1b087fc4610af552226387f21b3bcb0da048caaea4cfe6063a","impliedFormat":99},{"version":"497711bd7a49659b1294b17df5801ed3e939e33e0ee313d8373ee0aa11a9dc82","signature":"323f533b672b96b572a4862a71a229b913df667e88cfd5b2328e01aab8097589","impliedFormat":99},{"version":"449a83d8d5cf6be87463b3a4db18a40bedf3c475f1c2f0193ea174f6f05dc151","signature":"15d94a4bafca6beeecdcf2d0411a773cc7ffad2e6c911e43e8487c4338daa6bb","impliedFormat":99},{"version":"6922401f50b3dea527d6ee473be4a2baf799337d7837f0422627390f10681802","signature":"47ba09c03551eb26d8beb506c22d937c6a97437474775ed9c77ffdd20bb56ec8","impliedFormat":99},{"version":"d9dd675668fb33558479e19179b5ba6ddd487dad79b4e6dfc2da262ecb115efc","signature":"be2fa149c0adf79b16ef75587b22416792b8e81422596fbf4925cce06defc70b","impliedFormat":99},{"version":"b78fe56cb5a0abe4e240d2dc98c9f66b2c65d88f9e1c6aa89c14ad3e4a98dfeb","signature":"782d7f9652d1e4256edb944d6d6abbbdacf5e43c1b54f09023b6d2e4c80b6053","impliedFormat":99},{"version":"f713064ca751dc588bc13832137c418cb70cf0446de92ade60ad631071558fca","impliedFormat":1},{"version":"dfefd34e8ab60f41d0c130527d5092d6ce662dc9fa85bc8c97682baf65830b51","impliedFormat":1},{"version":"96c23535f4f9dd15beb767e070559ea672f6a35f103152836a67100605136a96","impliedFormat":1},{"version":"b0f4dd1a825912da8f12fd3388d839ef4aa51165ea0e60e4869b50b7ccb4f6fc","impliedFormat":1},{"version":"9cb7c5f710dc84d2e9500831a3e9a27afd3c3710f5a1b8744a50473e565b41fc","impliedFormat":1},{"version":"cf6b2edde490f303918809bfab1da8b6d059b50c160bec72005ff4c248bdd079","impliedFormat":1},{"version":"09df3b4f1c937f02e7fee2836d4c4d7a63e66db70fd4d4e97126f4542cc21d9d","impliedFormat":1},{"version":"7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","impliedFormat":1},{"version":"32465ea19404cb188e84cf08c6b1f6b12d739140436402cdbc184a3fd20a7d81","affectsGlobalScope":true,"impliedFormat":1},{"version":"cce1f5f86974c1e916ec4a8cab6eec9aa8e31e8148845bf07fbaa8e1d97b1a2c","impliedFormat":1},{"version":"bb6872f39c58753205c19b9f89e1e07d61116ae5d82539cef0f3bde5e8fecb57","affectsGlobalScope":true,"impliedFormat":1},{"version":"546ab07e19116d935ad982e76a223275b53bff7771dab94f433b7ab04652936e","impliedFormat":1},{"version":"7b43160a49cf2c6082da0465876c4a0b164e160b81187caeb0a6ca7a281e85ba","impliedFormat":1},{"version":"aefb5a4a209f756b580eb53ea771cca8aad411603926f307a5e5b8ec6b16dcf6","affectsGlobalScope":true,"impliedFormat":1},{"version":"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb","impliedFormat":1},{"version":"3a3b3310118e79c8d394171a87f4dc8fd562337a85e33f9fa9636040a2ec2fde","impliedFormat":1},{"version":"b86e1a45b29437f3a99bad4147cb9fe2357617e8008c0484568e5bb5138d6e13","impliedFormat":1},{"version":"b5b719a47968cd61a6f83f437236bb6fe22a39223b6620da81ef89f5d7a78fb7","impliedFormat":1},{"version":"42c431e7965b641106b5e25ab3283aa4865ca7bb9909610a2abfa6226e4348be","impliedFormat":1},{"version":"0b7e732af0a9599be28c091d6bd1cb22c856ec0d415d4749c087c3881ca07a56","impliedFormat":1},{"version":"b7fe70be794e13d1b7940e318b8770cd1fb3eced7707805318a2e3aaac2c3e9e","impliedFormat":1},{"version":"2c71199d1fc83bf17636ad5bf63a945633406b7b94887612bba4ef027c662b3e","affectsGlobalScope":true,"impliedFormat":1},{"version":"738a0de235edb5caf581c5aa86f5dd48ee28b2d0da1e327cbc57cdabde116bda","affectsGlobalScope":true,"impliedFormat":1},{"version":"3b4c85eea12187de9929a76792b98406e8778ce575caca8c574f06da82622c54","impliedFormat":1},{"version":"f788131a39c81e0c9b9e463645dd7132b5bc1beb609b0e31e5c1ceaea378b4df","impliedFormat":1},{"version":"f4016bf7fd9b760162521f2f18fab4023095795e4fb34496d8c61c59acfd0a56","impliedFormat":1},{"version":"21894466693f64957b9bd4c80fa3ec7fdfd4efa9d1861e070aca23f10220c9b2","impliedFormat":1},{"version":"396a8939b5e177542bdf9b5262b4eee85d29851b2d57681fa9d7eae30e225830","impliedFormat":1},{"version":"ad8848c289c0b633452e58179f46edccd14b5a0fe90ebce411f79ff040b803e0","impliedFormat":1},{"version":"120285cc97da7b20b0cbf2c557a5db7d215ec17ee688165ac8aff7f8de035b75","affectsGlobalScope":true,"impliedFormat":1},{"version":"5ca4a9fb7c9ee4f60df6d3bb6460e2c7f3a9cd7b8f7ebae29110fac74de4e50c","impliedFormat":1},{"version":"42a7993edf3288c33755ec08faefb1a40fd9f5f0844f82e48ae152791e80c76a","impliedFormat":1},{"version":"0f05c06ff6196958d76b865ae17245b52d8fe01773626ac3c43214a2458ea7b7","impliedFormat":1},{"version":"f49fb15c4aa06b65b0dce4db4584bfd8a9f74644baef1511b404dc95be34af00","affectsGlobalScope":true,"impliedFormat":1},{"version":"d48009cbe8a30a504031cc82e1286f78fed33b7a42abf7602c23b5547b382563","affectsGlobalScope":true,"impliedFormat":1},{"version":"7aaeb5e62f90e1b2be0fc4844df78cdb1be15c22b427bc6c39d57308785b8f10","impliedFormat":1},{"version":"3ba30205a029ebc0c91d7b1ab4da73f6277d730ca1fc6692d5a9144c6772c76b","impliedFormat":1},{"version":"d8dba11dc34d50cb4202de5effa9a1b296d7a2f4a029eec871f894bddfb6430d","impliedFormat":1},{"version":"8b71dd18e7e63b6f991b511a201fad7c3bf8d1e0dd98acb5e3d844f335a73634","impliedFormat":1},{"version":"01d8e1419c84affad359cc240b2b551fb9812b450b4d3d456b64cda8102d4f60","impliedFormat":1},{"version":"458b216959c231df388a5de9dcbcafd4b4ca563bc3784d706d0455467d7d4942","impliedFormat":1},{"version":"269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","impliedFormat":1},{"version":"8258e69a3b0de494ea55eeea7a4d3216ac112c12006c74dfd381c0d5e42a2607","impliedFormat":1},{"version":"cdaaf046791d7d588f28f32197c5d6acc43343e62540a67eed194c9c20535fdc","impliedFormat":1},{"version":"831c22d257717bf2cbb03afe9c4bcffc5ccb8a2074344d4238bf16d3a857bb12","impliedFormat":1},{"version":"e78290186ee23e5a4d067811dcc547973be09f4dc9564cfed6c7f1f0bdd89d24","affectsGlobalScope":true,"impliedFormat":1},{"version":"cbf046714f3a3ba2544957e1973ac94aa819fa8aa668846fa8de47eb1c41b0b2","affectsGlobalScope":true,"impliedFormat":1},{"version":"aa34c3aa493d1c699601027c441b9664547c3024f9dbab1639df7701d63d18fa","impliedFormat":1},{"version":"eae74e3d50820f37c72c0679fed959cd1e63c98f6a146a55b8c4361582fa6a52","impliedFormat":1},{"version":"7c651f8dce91a927ab62925e73f190763574c46098f2b11fb8ddc1b147a6709a","impliedFormat":1},{"version":"7440ab60f4cb031812940cc38166b8bb6fbf2540cfe599f87c41c08011f0c1df","impliedFormat":1},{"version":"aed89e3c18f4c659ee8153a76560dffda23e2d801e1e60d7a67abd84bc555f8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"290276bcec65d49eb152489c62845b28bed530258751c80d04d167b36b33be72","affectsGlobalScope":true,"impliedFormat":1},{"version":"e393915d3dc385e69c0e2390739c87b2d296a610662eb0b1cb85224e55992250","impliedFormat":1},{"version":"2f940651c2f30e6b29f8743fae3f40b7b1c03615184f837132b56ea75edad08b","impliedFormat":1},{"version":"5749c327c3f789f658072f8340786966c8b05ea124a56c1d8d60e04649495a4d","impliedFormat":1},{"version":"c9d62b2a51b2ff166314d8be84f6881a7fcbccd37612442cf1c70d27d5352f50","affectsGlobalScope":true,"impliedFormat":1},{"version":"e7dbf5716d76846c7522e910896c5747b6df1abd538fee8f5291bdc843461795","impliedFormat":1},{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true,"impliedFormat":1},{"version":"16dcbd7095be9ba030b671ef982dc760e03d40a0f54f27f2a6f1fa00f5670fe7","impliedFormat":1},{"version":"6adaa01cba6e7bae17d8291089e9e38bfc3fffcd522e2161214cbaccab4c1b2b","impliedFormat":1},{"version":"8b06ac3faeacb8484d84ddb44571d8f410697f98d7bfa86c0fda60373a9f5215","impliedFormat":1},{"version":"c79bd2f3e5c05e7ad80dc82ce8d339cac23ac1f5e6cfab96c860bb70d5162873","impliedFormat":1},{"version":"e3328cedfe4d7fac23ba75d00bf5169269800ab949d0837cd88c4211a52c3762","impliedFormat":1},{"version":"cdcc132f207d097d7d3aa75615ab9a2e71d6a478162dde8b67f88ea19f3e54de","impliedFormat":1},{"version":"0d14fa22c41fdc7277e6f71473b20ebc07f40f00e38875142335d5b63cdfc9d2","impliedFormat":1},{"version":"c085e9aa62d1ae1375794c1fb927a445fa105fed891a7e24edbb1c3300f7384a","impliedFormat":1},{"version":"f315e1e65a1f80992f0509e84e4ae2df15ecd9ef73df975f7c98813b71e4c8da","impliedFormat":1},{"version":"5b9586e9b0b6322e5bfbd2c29bd3b8e21ab9d871f82346cb71020e3d84bae73e","impliedFormat":1},{"version":"3e70a7e67c2cb16f8cd49097360c0309fe9d1e3210ff9222e9dac1f8df9d4fb6","impliedFormat":1},{"version":"ab68d2a3e3e8767c3fba8f80de099a1cfc18c0de79e42cb02ae66e22dfe14a66","impliedFormat":1},{"version":"d96cc6598148bf1a98fb2e8dcf01c63a4b3558bdaec6ef35e087fd0562eb40ec","impliedFormat":1},{"version":"c8950367d1812758e9e354c695c60c3e6311bf2cd98b9f9eb469a19df8a9a486","affectsGlobalScope":true,"impliedFormat":1},{"version":"dd89872dd0647dfd63665f3d525c06d114310a2f7a5a9277e5982a152b31be2b","impliedFormat":1},{"version":"96d14f21b7652903852eef49379d04dbda28c16ed36468f8c9fa08f7c14c9538","impliedFormat":1},{"version":"cc0700b1b97e18a3d5d9184470502d8762ec85158819d662730c3a8c5d702584","impliedFormat":1},{"version":"9871b7ee672bc16c78833bdab3052615834b08375cb144e4d2cba74473f4a589","impliedFormat":1},{"version":"c863198dae89420f3c552b5a03da6ed6d0acfa3807a64772b895db624b0de707","impliedFormat":1},{"version":"8b03a5e327d7db67112ebbc93b4f744133eda2c1743dbb0a990c61a8007823ef","impliedFormat":1},{"version":"86c73f2ee1752bac8eeeece234fd05dfcf0637a4fbd8032e4f5f43102faa8eec","impliedFormat":1},{"version":"42fad1f540271e35ca37cecda12c4ce2eef27f0f5cf0f8dd761d723c744d3159","impliedFormat":1},{"version":"ff3743a5de32bee10906aff63d1de726f6a7fd6ee2da4b8229054dfa69de2c34","impliedFormat":1},{"version":"83acd370f7f84f203e71ebba33ba61b7f1291ca027d7f9a662c6307d74e4ac22","impliedFormat":1},{"version":"1445cec898f90bdd18b2949b9590b3c012f5b7e1804e6e329fb0fe053946d5ec","impliedFormat":1},{"version":"0e5318ec2275d8da858b541920d9306650ae6ac8012f0e872fe66eb50321a669","impliedFormat":1},{"version":"cf530297c3fb3a92ec9591dd4fa229d58b5981e45fe6702a0bd2bea53a5e59be","impliedFormat":1},{"version":"c1f6f7d08d42148ddfe164d36d7aba91f467dbcb3caa715966ff95f55048b3a4","impliedFormat":1},{"version":"f4e9bf9103191ef3b3612d3ec0044ca4044ca5be27711fe648ada06fad4bcc85","impliedFormat":1},{"version":"0c1ee27b8f6a00097c2d6d91a21ee4d096ab52c1e28350f6362542b55380059a","impliedFormat":1},{"version":"7677d5b0db9e020d3017720f853ba18f415219fb3a9597343b1b1012cfd699f7","impliedFormat":1},{"version":"bc1c6bc119c1784b1a2be6d9c47addec0d83ef0d52c8fbe1f14a51b4dfffc675","impliedFormat":1},{"version":"52cf2ce99c2a23de70225e252e9822a22b4e0adb82643ab0b710858810e00bf1","impliedFormat":1},{"version":"770625067bb27a20b9826255a8d47b6b5b0a2d3dfcbd21f89904c731f671ba77","impliedFormat":1},{"version":"d1ed6765f4d7906a05968fb5cd6d1db8afa14dbe512a4884e8ea5c0f5e142c80","impliedFormat":1},{"version":"799c0f1b07c092626cf1efd71d459997635911bb5f7fc1196efe449bba87e965","impliedFormat":1},{"version":"2a184e4462b9914a30b1b5c41cf80c6d3428f17b20d3afb711fff3f0644001fd","impliedFormat":1},{"version":"9eabde32a3aa5d80de34af2c2206cdc3ee094c6504a8d0c2d6d20c7c179503cc","impliedFormat":1},{"version":"397c8051b6cfcb48aa22656f0faca2553c5f56187262135162ee79d2b2f6c966","impliedFormat":1},{"version":"a8ead142e0c87dcd5dc130eba1f8eeed506b08952d905c47621dc2f583b1bff9","impliedFormat":1},{"version":"a02f10ea5f73130efca046429254a4e3c06b5475baecc8f7b99a0014731be8b3","impliedFormat":1},{"version":"f77ff4cd234d3fd18ddd5aeadb6f94374511931976d41f4b9f594cb71f7ce6f3","impliedFormat":1},{"version":"4c9a0564bb317349de6a24eb4efea8bb79898fa72ad63a1809165f5bd42970dd","impliedFormat":1},{"version":"4f18b4e6081e5e980ef53ddf57b9c959d36cffe1eb153865f512a01aeffb5e1e","impliedFormat":1},{"version":"7f17d4846a88eca5fe71c4474ef687ee89c4acf9b5372ab9b2ee68644b7e0fe0","impliedFormat":1},{"version":"b444a410d34fb5e98aa5ee2b381362044f4884652e8bc8a11c8fe14bbd85518e","impliedFormat":1},{"version":"c35808c1f5e16d2c571aa65067e3cb95afeff843b259ecfa2fc107a9519b5392","impliedFormat":1},{"version":"14d5dc055143e941c8743c6a21fa459f961cbc3deedf1bfe47b11587ca4b3ef5","impliedFormat":1},{"version":"a3ad4e1fc542751005267d50a6298e6765928c0c3a8dce1572f2ba6ca518661c","impliedFormat":1},{"version":"f237e7c97a3a89f4591afd49ecb3bd8d14f51a1c4adc8fcae3430febedff5eb6","impliedFormat":1},{"version":"3ffdfbec93b7aed71082af62b8c3e0cc71261cc68d796665faa1e91604fbae8f","impliedFormat":1},{"version":"662201f943ed45b1ad600d03a90dffe20841e725203ced8b708c91fcd7f9379a","impliedFormat":1},{"version":"c9ef74c64ed051ea5b958621e7fb853fe3b56e8787c1587aefc6ea988b3c7e79","impliedFormat":1},{"version":"2462ccfac5f3375794b861abaa81da380f1bbd9401de59ffa43119a0b644253d","impliedFormat":1},{"version":"34baf65cfee92f110d6653322e2120c2d368ee64b3c7981dff08ed105c4f19b0","impliedFormat":1},{"version":"58e0cee50add50d4b6d47a935e26aeb0080d98c9cf729f8af389511cdfa10526","impliedFormat":1},{"version":"b0d10e46cfe3f6c476b69af02eaa38e4ccc7430221ce3109ae84bb9fb8282298","impliedFormat":1},{"version":"75fa6a9be075402ea969c1fcec4bb1421f72efbc3e2f340032684cdd3115197c","impliedFormat":1},{"version":"c516a2b18ec68ce5281d7f90113f9be11c7800a859e52292ec7d6a5c13d0465b","impliedFormat":1}],"root":[[65,118]],"options":{"declaration":true,"declarationMap":true,"downlevelIteration":false,"emitDeclarationOnly":true,"emitDecoratorMetadata":true,"esModuleInterop":true,"experimentalDecorators":true,"module":199,"outDir":"./","rootDir":"../..","skipLibCheck":true,"sourceMap":true,"strict":false,"strictNullChecks":false,"target":99},"fileIdsList":[[99,103,104,105,106,108,111,117,171],[119,171],[171],[171,185],[119,120,121,122,123,171],[119,121,171],[142,171,178],[171,180],[171,181],[171,187,190],[125,171],[128,171],[129,134,162,171],[130,141,142,149,159,170,171],[130,131,141,149,171],[132,171],[133,134,142,150,171],[134,159,167,171],[135,137,141,149,171],[136,171],[137,138,171],[141,171],[139,141,171],[141,142,143,159,170,171],[141,142,143,156,159,162,171],[171,175],[137,141,144,149,159,170,171],[141,142,144,145,149,159,167,170,171],[144,146,159,167,170,171],[125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177],[141,147,171],[148,170,171,175],[137,141,149,159,171],[150,171],[151,171],[128,152,171],[153,169,171,175],[154,171],[155,171],[141,156,157,171],[156,158,171,173],[129,141,159,160,161,162,171],[129,159,161,171],[159,160,171],[162,171],[163,171],[128,159,171],[141,165,166,171],[165,166,171],[134,149,159,167,171],[168,171],[149,169,171],[129,144,155,170,171],[134,171],[159,171,172],[148,171,173],[171,174],[129,134,141,143,152,159,170,171,173,175],[159,171,176],[171,194,233],[171,194,218,233],[171,233],[171,194],[171,194,219,233],[171,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232],[171,219,233],[171,235],[171,183,189],[171,187],[171,184,188],[171,186],[68,72,73,77,78,80,81,171],[72,73,74,79,80,81,171],[68,72,73,75,79,80,81,171],[112,113,115,116,171],[72,73,79,114,171],[73,79,80,81,83,171],[109,110,171],[73,75,78,79,80,81,171],[75,171],[67,171],[67,68,69,73,74,171],[72,73,171],[68,74,75,76,78,171],[68,72,73,74,75,77,78,79,80,81,83,98,171],[68,70,74,171],[65,68,171],[68,171],[67,68,171],[67,68,70,71,73,171],[68,72,73,74,75,77,78,79,81,171],[68,72,73,74,75,77,78,80,171],[65,66,68,171],[68,72,73,74,75,77,81,171],[68,73,79,82,171],[68,72,73,78,86,89,97,171],[68,72,171],[85,86,87,88,95,100,103,171],[86,171],[68,73,84,85,171],[87,88,96,171],[68,72,73,77,81,84,85,86,87,88,89,97,98,171],[101,102,171],[72,73,80,85,86,87,88,96,98,100,171],[68,72,80,84,85,87,88,96,98,100,171],[96,171],[92,96,171],[107,171],[91,171],[68,90,96,171],[68,96,171],[89,92,93,94,96,97,171],[72,73,93,171],[72,73,87,88,89,90,91,92,93,94,95,97,171],[87,96,171],[68,88,171],[99,103,104,105,106,108,111,117],[78,80,81],[80,81],[112,113,115,116],[109,110],[75],[67],[67,68,74],[72],[68,74,78],[68,72,73,74,75,77,78,79,80,81,83,98],[68,70,74],[65,68],[68],[67,68],[68,70,71],[68,74,78,81],[68,74,78,80],[68,81],[68,78,86,89,97],[85,86,87,88,95,100,103],[86],[68,84],[87,88,96],[87,88,89,97],[101,102],[80,86,87,88,96,100],[68,80,87,88,96,100],[96],[92,96],[107],[91],[90,96],[89,92,93,94,96,97],[73,93],[89,90,92,93,94,97],[87,96],[88]],"referencedMap":[[118,1],[121,2],[119,3],[183,3],[186,4],[185,3],[124,5],[120,2],[122,6],[123,2],[179,7],[180,3],[181,8],[182,9],[191,10],[192,3],[193,3],[125,11],[126,11],[128,12],[129,13],[130,14],[131,15],[132,16],[133,17],[134,18],[135,19],[136,20],[137,21],[138,21],[140,22],[139,23],[141,22],[142,24],[143,25],[127,26],[177,3],[144,27],[145,28],[146,29],[178,30],[147,31],[148,32],[149,33],[150,34],[151,35],[152,36],[153,37],[154,38],[155,39],[156,40],[157,40],[158,41],[159,42],[161,43],[160,44],[162,45],[163,46],[164,47],[165,48],[166,49],[167,50],[168,51],[169,52],[170,53],[171,54],[172,55],[173,56],[174,57],[175,58],[176,59],[218,60],[219,61],[194,62],[197,62],[216,60],[217,60],[207,60],[206,63],[204,60],[199,60],[212,60],[210,60],[214,60],[198,60],[211,60],[215,60],[200,60],[201,60],[213,60],[195,60],[202,60],[203,60],[205,60],[209,60],[220,64],[208,60],[196,60],[233,65],[232,3],[227,64],[229,66],[228,64],[221,64],[222,64],[224,64],[226,64],[230,66],[231,66],[223,66],[225,66],[234,3],[235,3],[236,67],[184,3],[190,68],[188,69],[189,70],[187,71],[63,3],[64,3],[12,3],[14,3],[13,3],[2,3],[15,3],[16,3],[17,3],[18,3],[19,3],[20,3],[21,3],[22,3],[3,3],[4,3],[23,3],[27,3],[24,3],[25,3],[26,3],[28,3],[29,3],[30,3],[5,3],[31,3],[32,3],[33,3],[34,3],[6,3],[38,3],[35,3],[36,3],[37,3],[39,3],[7,3],[40,3],[45,3],[46,3],[41,3],[42,3],[43,3],[44,3],[8,3],[50,3],[47,3],[48,3],[49,3],[51,3],[9,3],[52,3],[53,3],[54,3],[57,3],[55,3],[56,3],[58,3],[59,3],[10,3],[1,3],[11,3],[62,3],[61,3],[60,3],[114,3],[112,72],[116,73],[113,74],[117,75],[115,76],[110,77],[111,78],[109,79],[82,3],[70,80],[68,81],[75,82],[76,83],[77,84],[72,3],[99,85],[71,86],[66,87],[65,88],[69,89],[74,90],[80,91],[81,92],[79,3],[67,93],[78,94],[83,95],[98,96],[73,97],[104,98],[88,99],[85,3],[86,100],[84,3],[100,101],[95,102],[103,103],[101,104],[102,105],[87,99],[92,106],[107,107],[108,108],[93,3],[106,109],[91,110],[90,111],[105,112],[94,113],[96,114],[97,115],[89,116]],"exportedModulesMap":[[118,117],[121,2],[119,3],[183,3],[186,4],[185,3],[124,5],[120,2],[122,6],[123,2],[179,7],[180,3],[181,8],[182,9],[191,10],[192,3],[193,3],[125,11],[126,11],[128,12],[129,13],[130,14],[131,15],[132,16],[133,17],[134,18],[135,19],[136,20],[137,21],[138,21],[140,22],[139,23],[141,22],[142,24],[143,25],[127,26],[177,3],[144,27],[145,28],[146,29],[178,30],[147,31],[148,32],[149,33],[150,34],[151,35],[152,36],[153,37],[154,38],[155,39],[156,40],[157,40],[158,41],[159,42],[161,43],[160,44],[162,45],[163,46],[164,47],[165,48],[166,49],[167,50],[168,51],[169,52],[170,53],[171,54],[172,55],[173,56],[174,57],[175,58],[176,59],[218,60],[219,61],[194,62],[197,62],[216,60],[217,60],[207,60],[206,63],[204,60],[199,60],[212,60],[210,60],[214,60],[198,60],[211,60],[215,60],[200,60],[201,60],[213,60],[195,60],[202,60],[203,60],[205,60],[209,60],[220,64],[208,60],[196,60],[233,65],[232,3],[227,64],[229,66],[228,64],[221,64],[222,64],[224,64],[226,64],[230,66],[231,66],[223,66],[225,66],[234,3],[235,3],[236,67],[184,3],[190,68],[188,69],[189,70],[187,71],[63,3],[64,3],[12,3],[14,3],[13,3],[2,3],[15,3],[16,3],[17,3],[18,3],[19,3],[20,3],[21,3],[22,3],[3,3],[4,3],[23,3],[27,3],[24,3],[25,3],[26,3],[28,3],[29,3],[30,3],[5,3],[31,3],[32,3],[33,3],[34,3],[6,3],[38,3],[35,3],[36,3],[37,3],[39,3],[7,3],[40,3],[45,3],[46,3],[41,3],[42,3],[43,3],[44,3],[8,3],[50,3],[47,3],[48,3],[49,3],[51,3],[9,3],[52,3],[53,3],[54,3],[57,3],[55,3],[56,3],[58,3],[59,3],[10,3],[1,3],[11,3],[62,3],[61,3],[60,3],[112,118],[116,119],[113,119],[117,120],[110,119],[111,121],[109,119],[70,122],[68,123],[75,124],[76,125],[77,126],[99,127],[71,128],[66,129],[65,130],[69,131],[74,132],[80,133],[81,134],[67,129],[78,135],[83,130],[98,136],[73,130],[104,137],[88,138],[86,139],[100,140],[95,141],[103,142],[101,143],[102,144],[87,138],[92,145],[107,146],[108,147],[106,148],[91,149],[90,145],[105,150],[94,151],[96,152],[97,153],[89,154]],"semanticDiagnosticsPerFile":[118,121,119,183,186,185,124,120,122,123,179,180,181,182,191,192,193,125,126,128,129,130,131,132,133,134,135,136,137,138,140,139,141,142,143,127,177,144,145,146,178,147,148,149,150,151,152,153,154,155,156,157,158,159,161,160,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,218,219,194,197,216,217,207,206,204,199,212,210,214,198,211,215,200,201,213,195,202,203,205,209,220,208,196,233,232,227,229,228,221,222,224,226,230,231,223,225,234,235,236,184,190,188,189,187,63,64,12,14,13,2,15,16,17,18,19,20,21,22,3,4,23,27,24,25,26,28,29,30,5,31,32,33,34,6,38,35,36,37,39,7,40,45,46,41,42,43,44,8,50,47,48,49,51,9,52,53,54,57,55,56,58,59,10,1,11,62,61,60,114,112,116,113,117,115,110,111,109,82,70,68,75,76,77,72,99,71,66,65,69,74,80,81,79,67,78,83,98,73,104,88,85,86,84,100,95,103,101,102,87,92,107,108,93,106,91,90,105,94,96,97,89]},"version":"5.2.2"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# What is Type-42 and How Does it Enable Private Signatures?
|
|
2
|
+
|
|
3
|
+
The system known as "type-42," based on the BRC-42 technical standard introduces a sophisticated method of key derivation that enhances privacy and enables what are known as "private signatures." This document aims to elucidate the principles of type-42 derivation, demonstrate its role in enabling private signatures, and explore its broader implications within the BSV ecosystem.
|
|
4
|
+
|
|
5
|
+
## Understanding Key Derivation
|
|
6
|
+
|
|
7
|
+
Before delving into the specifics of type-42, it is essential to understand the concept of key derivation in cryptographic systems. Key derivation is a process that generates one or more keys from a single master key, which can then be used for various cryptographic purposes, such as encryption, decryption, and digital signing. Traditional key derivation methods like BIP32 offer limited flexibility and privacy because they restrict the number of derivable keys and allow anyone to see all the derived children, even those computed by others.
|
|
8
|
+
|
|
9
|
+
## The Type-42 Key Derivation Method
|
|
10
|
+
|
|
11
|
+
Type-42 improves upon traditional approaches by allowing two parties to independently generate a series of secret keys for each other using shared information that remains confidential between them. It improves upon BIP32 because instead of having one single public key derivation universe the entire world can see, each set of two parties who are communicating with one another share their own unique, private key derivation universe only the two of them can access. This method utilizes the following components and steps:
|
|
12
|
+
|
|
13
|
+
1. **Identity Keys**: Each party maintains a master private key and a master public key. The whole world can know the master public key.
|
|
14
|
+
|
|
15
|
+
2. **Shared Secret Computation**: When two parties wish to interact, sign or validate messages, they first compute a shared secret. This is achieved by one party using their private key and the other party's public key in elliptic curve point multiplication.
|
|
16
|
+
|
|
17
|
+
3. **Key Generation Using Invoice Numbers**: To generate a unique key for a payment, message or any other purpose, the parties agree upon a specific invoice number as an identifier. An HMAC (Hash-based Message Authentication Code) is computed over this invoice number using the shared secret as the key, ensuring that each key is unique and known only to the involved parties. One party could generate the invoice number and send it to the other. Publishing the invoice number doesn't compromise security because of the HMAC.
|
|
18
|
+
|
|
19
|
+
4. **Private and Public Key Derivation**: The HMAC output is used to derive new child keys—both private and public—ensuring that both transactional privacy and security are maintained.
|
|
20
|
+
|
|
21
|
+
## Enabling Private Signatures with Type-42
|
|
22
|
+
|
|
23
|
+
Private signatures are a crucial application of type-42 derivation. In traditional digital signature schemes, anyone with access to the signer's public key can verify the signature. However, with Type-42:
|
|
24
|
+
|
|
25
|
+
- **Enhanced Privacy**: The signature can only be verified by someone who knows the specific shared secret used to derive the keys involved in the signature. This means that outside parties cannot verify the signature or link it back to the signer without access to the shared secret, enhancing the privacy of the exchange.
|
|
26
|
+
|
|
27
|
+
- **Security Against Replay Attacks**: Since each transaction uses a unique key derived from a different invoice number, the risk of replay attacks (where a valid data transmission is maliciously or fraudulently repeated) is minimized. This is especially true when rolling or time-based invoice numbering schemes are used.
|
|
28
|
+
|
|
29
|
+
- **Auditable by Design**: For situations requiring transparency (e.g., audits), the shared secrets or the HMAC outputs can be disclosed to specific entities, like tax agencies, without compromising the overall security of the system, or of unrelated transactions.
|
|
30
|
+
|
|
31
|
+
## Broader Applications
|
|
32
|
+
|
|
33
|
+
Beyond private signatures, type-42 key derivation can be applied in various other contexts within BSV transactions. These include secure message exchanges, private invoicing systems, and more flexible wallet architectures that support a multitude of applications and services without compromising security or privacy.
|
|
34
|
+
|
|
35
|
+
Type-42 not only facilitates more secure and private digital signatures but also heralds a new era of cryptographic flexibility and interoperability in digital asset transactions. You can check out a tutorial leveraging the new TypeScript SDK's type-42 features [here](../examples/EXAMPLE_TYPE_42.md).
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# What is BEEF and Why is it Useful?
|
|
2
|
+
|
|
3
|
+
The Background Evaluation Extended Format ([BEEF](https://github.com/bitcoin-sv/BRCs/blob/master/transactions/0062.md)) is a binary format designed for sending transactions across the Bitcoin SV (BSV) network. This document aims to demystify BEEF, outlining its structure, purpose, and the compelling advantages it offers to the BSV ecosystem.
|
|
4
|
+
|
|
5
|
+
## Introduction to BEEF
|
|
6
|
+
|
|
7
|
+
At its core, BEEF is a protocol that encapsulates not just transactions but also their ancestry and the necessary Simplified Payment Verification (SPV) proofs. Its design is optimized for efficiency, minimizing bandwidth usage (especially when inputs have common ancestors) while maintaining the requisite data for full independent validation.
|
|
8
|
+
|
|
9
|
+
The impetus for BEEF's development arises from the need to streamline the transaction verification process without compromising on security or decentralization. Traditional SPV methods like BRC-8, while effective, have not seen widespread adoption, and BEEF aims to address this gap by providing a more uniquetous and standardized solution, aligned with the key industry stakeholders.
|
|
10
|
+
|
|
11
|
+
## The Structure of BEEF
|
|
12
|
+
|
|
13
|
+
BEEF employs a binary stream, identified by a unique version number, to package transactions together with their Merkle proofs (BUMPs) and ancestor transactions. This bundling allows for a comprehensive verification process, starting from the most ancient transactions to the newest.
|
|
14
|
+
|
|
15
|
+
Key components of the BEEF format include:
|
|
16
|
+
- **Version Number**: A specific sequence that identifies the data as BEEF, allowing for future versions and improvements.
|
|
17
|
+
- **BUMPs**: BSV Unified Merkle Paths that prove the inclusion of transactions within the blockchain.
|
|
18
|
+
- **Transactions**: The actual transaction data, alongside indicators of their connection to BUMPs.
|
|
19
|
+
|
|
20
|
+
The data is arranged in a specific order to facilitate streaming validation. This means that as soon as the initial bytes (containing Merkle Paths) are received, the verification process can commence, making the validation efficient and fast.
|
|
21
|
+
|
|
22
|
+
## Advantages of BEEF
|
|
23
|
+
|
|
24
|
+
### Efficiency in Bandwidth Use
|
|
25
|
+
By condensing transactions, their ancestors, and SPV proofs into a single binary format, BEEF significantly reduces the amount of data transmitted across the network. This efficiency is crucial for scaling the BSV blockchain, making it feasible to process large volumes of transactions quickly. Thsese efficiencies compound when many inputs point back to a single common ancestor.
|
|
26
|
+
|
|
27
|
+
### Enhanced Security and Trust
|
|
28
|
+
BEEF's structure ensures that every transaction can be independently verified, down to its roots in the blockchain. This process not only strengthens security but also enhances trust among network participants. Users can confidently validate transactions without relying on external sources for SPV data. By defining clear rules for validation, we ensure a lack of ambiguity among transacting parties.
|
|
29
|
+
|
|
30
|
+
### Streamlining the Verification Process
|
|
31
|
+
The ordered structure of BEEF, coupled with its binary format, streamlines the verification process. Validators can begin verifying transaction ancestry as soon as they receive the data, without waiting for the entire payload. This immediate validation is particularly beneficial in complex transaction chains, where traditional methods might struggle with efficiency.
|
|
32
|
+
|
|
33
|
+
### Future-Proofing
|
|
34
|
+
With its versioned format, BEEF is designed for future improvements and iterations. As the BSV ecosystem evolves, BEEF can adapt, incorporating new features or optimizations without disrupting the underlying principles that make it effective.
|
|
35
|
+
|
|
36
|
+
## Conclusion
|
|
37
|
+
|
|
38
|
+
The Background Evaluation Extended Format represents a significant advancement in the BSV ecosystem. By combining transactions with their ancestral data and SPV proofs in a compact, binary format, BEEF addresses key challenges in transaction verification and validation. By aligning across the ecosystem, BEEF maximizes interoperability among wallets and network services. It offers a scalable, secure, and efficient mechanism for ensuring the integrity of transactions across the blockchain. You can check out an example of how to verify BEEF transactions with the TypeScript SDK [here](../examples/EXAMPLE_VERIFYING_BEEF.md).
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# The Role of Chain Trackers within the SPV Ecosystem
|
|
2
|
+
|
|
3
|
+
## Introduction
|
|
4
|
+
|
|
5
|
+
Simplified Payment Verification (SPV) is a method that allows participants in the BSV network to verify transactions without needing the full blockchain. This process is crucial for enhancing scalability and efficiency, particularly now that the daily transaction volume has become substantial. Chain trackers play a vital role within this SPV ecosystem, ensuring the integrity and reliability of this transaction verification process by managing and verifying blockchain headers and checking Merkle roots.
|
|
6
|
+
|
|
7
|
+
## Conceptual Overview of SPV
|
|
8
|
+
|
|
9
|
+
The SPV process was originally proposed to allow anyone to verify transactions without requiring the complete blockchain data. Instead of storing the entire ledger, people only need to maintain a copy of the block headers. The essential components of SPV include:
|
|
10
|
+
|
|
11
|
+
- **Block Headers**: Clients store headers of all blocks instead of full blocks, significantly reducing the data storage requirement.
|
|
12
|
+
- **Merkle Proofs**: These proofs allow the verification of the inclusion of a transaction within a block without needing the entire block's content.
|
|
13
|
+
|
|
14
|
+
## Role of Chain Trackers
|
|
15
|
+
|
|
16
|
+
A chain tracker is a specialized component within the SPV architecture responsible for maintaining and updating a consistent and accurate view of the blockchain header chain. Its functions include:
|
|
17
|
+
|
|
18
|
+
- **Header Discovery and Verification**: Chain trackers continuously discover new block headers propagated through the network. They verify each header's integrity by checking the correctness of the proof-of-work and ensuring it correctly references the previous header.
|
|
19
|
+
|
|
20
|
+
- **Merkle Root Verification**: Once a new block header is accepted, the chain tracker validates Merkle roots presented in transaction proofs against the expected Merkle root in the block header. This step is crucial for ensuring that the transaction was indeed included in the block.
|
|
21
|
+
|
|
22
|
+
- **Chain Reorganizations**: In cases where the blockchain undergoes a reorganization (a rare occurrence), chain trackers adjust their header chain accordingly. They ensure that the client's view of the block sequence is always aligned with the honest chain, as recognized by the network.
|
|
23
|
+
|
|
24
|
+
### Security and Trust
|
|
25
|
+
|
|
26
|
+
Chain trackers significantly enhance the security of SPV clients by enabling them to trust the validity of transactions while relying on minimal blockchain data. They help in mitigating risks such as double-spending and blockchain forks by ensuring clients are always synchronized with the correct network state.
|
|
27
|
+
|
|
28
|
+
### Scalability Contributions
|
|
29
|
+
|
|
30
|
+
By enabling everyone on the network to verify transactions without full blockchain data, chain trackers contribute directly to the scalability of BSV. They allow more users to participate in the network without compromising on security or requiring extensive resources for full-chain indexing, thus supporting broader adoption and use at lower cost.
|
|
31
|
+
|
|
32
|
+
## Chain Trackers in Action
|
|
33
|
+
|
|
34
|
+
To illustrate the role of chain trackers, consider a scenario where an SPV client receives a transaction with a Merkle proof. The chain tracker checks the transaction's Merkle root against a stored block header. If the root matches, the transaction is confirmed to be part of the chain, thereby verifying its inclusion without needing the entire associated block's data.
|
|
35
|
+
|
|
36
|
+
## Conclusion
|
|
37
|
+
|
|
38
|
+
Chain trackers are indispensable in the SPV ecosystem, providing a balance between efficiency and security. By managing blockchain headers and verifying Merkle proofs, they ensure that participants can trust and validate transactions with confidence. Their role is foundational in enabling scalable, secure, and efficient transaction verification across the network. You can see a tutorial on integrating a chain tracker with the TypeScript BSV SDK [here](../examples/EXAMPLE_VERIFYING_ROOTS.md).
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
## How Does Transaction Fee Modeling Work?
|
|
2
|
+
|
|
3
|
+
Fees provide the incentive for miners to process and include transactions in the blockchain. This document provides a high-level conceptual overview of how transaction fee modeling works within the BSV ecosystem, highlighting its impact on both miners and network participants.
|
|
4
|
+
|
|
5
|
+
### Why Transaction Fees?
|
|
6
|
+
|
|
7
|
+
Transaction fees are paid by users to miners, who validate and add transactions to new blocks. Fees not only compensate miners for their computational power but also help secure the network by driving investments into higher scalability and more efficient transaction processing. This mechanism ensures that miners prioritize transactions with higher fees, thus aligning the users' needs with the miners' efforts.
|
|
8
|
+
|
|
9
|
+
### How Fees Are Calculated
|
|
10
|
+
|
|
11
|
+
#### Basic Fee Calculation
|
|
12
|
+
|
|
13
|
+
Currently, the most common metric for calculating transaction fees is based on the size of the transaction in kilobytes (KB). The fee model typically employed is the "satoshis per kilobyte" model, which assigns a certain number of satoshis (the smallest unit of Bitcoin) per kilobyte of transaction data. This model is straightforward: it multiplies the transaction size by a predetermined satoshi rate to determine the total fee.
|
|
14
|
+
|
|
15
|
+
#### Factors Influencing Fees
|
|
16
|
+
|
|
17
|
+
Different fee models may be used to evaluate the priority for transactions by transaction processors. Some factors that could be considered include:
|
|
18
|
+
|
|
19
|
+
1. **Transaction Size**: The primary factor affecting the fee is the transaction size, which includes the data such present in input and output scripts. Larger transactions require more bandwidth and processing power to validate, and thus generally incur higher fees.
|
|
20
|
+
|
|
21
|
+
2. **Number of Inputs and Outputs**: Transactions with many inputs that reduce the size of the UTXO set might be processed for les, while transactions that create lots of outputs and increase the UTXO set size might be more expensive.
|
|
22
|
+
|
|
23
|
+
3. **Script Complexity**: Transactions that use complex scripts or multiple signature verifications require more processing power, potentially increasing the fee.
|
|
24
|
+
|
|
25
|
+
### Advanced Fee Models
|
|
26
|
+
|
|
27
|
+
While the satoshis per kilobyte model is predominant, there are opportunities within the BSV ecosystem to implement more sophisticated fee strategies, especially in contexts where particular script templates are commonly used:
|
|
28
|
+
|
|
29
|
+
- **Fee Discounts for Priority Transactions**: Offer discounted rates for transactions that consolidate UTXOs or batch multiple outputs, which can improve the overall efficiency of the blockchain.
|
|
30
|
+
|
|
31
|
+
- **Custom Fee Models**: Some applications might implement custom fee models tailored to their specific needs, such as microtransactions in online games or high-volume, automated payments in smart contracts.
|
|
32
|
+
|
|
33
|
+
### Implementing Custom Fee Models
|
|
34
|
+
|
|
35
|
+
The BSV SDK allows developers to create and use custom fee models. These models can consider various factors beyond simple transaction size, enabling a flexible approach to transaction fee calculation. For instance, you can see a tutorial building a custom fee model [here](../examples/EXAMPLE_FEE_MODELING.md).
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# What are Hashes and Why are they Important in Bitcoin?
|
|
2
|
+
|
|
3
|
+
#### What is a Hash?
|
|
4
|
+
|
|
5
|
+
In the context of computer science, a hash is a function that converts an input (or 'message') into a fixed-size string of bytes. The output, typically a 'digest', represents concisely the original input data. A hash function is a type of one-way function, meaning it's easy to compute a hash from a given input but nearly impossible to recreate the original input just by knowing the hash value. This property ensures data integrity, as any alteration of the input data will result in a dramatically different hash.
|
|
6
|
+
|
|
7
|
+
#### Chain of Headers Using Hashes
|
|
8
|
+
|
|
9
|
+
In Bitcoin, every block in the blockchain is linked to its predecessor through a series of hash pointers in what is known as the 'chain of headers'. Each block header contains its own hash along with the hash of the previous block's header. This structure forms a secure, verifiable chain where each subsequent block reinforces the security of the previous block. Altering any single block would require recomputation of every hash that follows, a task computationally impractical, thus ensuring the integrity of the blockchain.
|
|
10
|
+
|
|
11
|
+
#### Merkle Trees: Verifying Transaction Inclusion
|
|
12
|
+
|
|
13
|
+
One of the core components of Bitcoin’s architecture is the use of Merkle trees as referenced in the Bitcoin whitepaper under sections 7 & 8. This efficient data structure allows us to quickly verify the inclusion of transactions in a block. Each transaction within a block has its hash, and these hashes are paired, hashed, paired again, and re-hashed until a single hash remains: the Merkle Root, which is stored in the block header. This process allows for a quick and secure verification of whether a specific transaction is included in the block without needing to download every transaction.
|
|
14
|
+
|
|
15
|
+
#### Practical Applications: On-Chain Use Cases and Tamper Evidence
|
|
16
|
+
|
|
17
|
+
The real-world application of hashing within applications built upon the Bitcoin SV blockchain is vast, particularly when proving the integrity and authenticity of data. For instance, in legal, financial, or real estate transactions, proving the non-tampered nature of a document or a series of transactions can be critical. Here, Bitcoin's blockchain serves as a tamper-evident ledger. Once data has been recorded in a block and absorbed into the blockchain through the chaining of hashes and the Merkle Root, it becomes immutable. This immutability is a powerful tool for proving that a document or transaction has not been altered post its original timestamping on the blockchain.
|
|
18
|
+
|
|
19
|
+
If there needs to be an added level of privacy, while also insuring that there is an immutable record, the data itself can also be hashed prior to being recorded on chain. This allows anyone to check that the hash of the data matches without having to reveal what that data is to the world.
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# How are Transactions Built with Inputs and Outputs?
|
|
2
|
+
|
|
3
|
+
Transactions are the fundamental entities within the blockchain, acting as the mechanism through which value is transferred across the network. Understanding how transactions are built using inputs and outputs is crucial for developers, as this process encompasses the core of creating, signing, and sending transactions within applications.
|
|
4
|
+
|
|
5
|
+
## Understanding Transactions
|
|
6
|
+
|
|
7
|
+
A **transaction** in BSV is a record that transfers some outputs containing Bitcoins from one state to the next. However, unlike traditional banking systems, these transactions aren't direct debits or credits to an account. Instead, they reference outputs created by previous transactions as thrir inputs and create new outputs as future spendable coins.
|
|
8
|
+
|
|
9
|
+
### Transaction Structure
|
|
10
|
+
|
|
11
|
+
Each transaction consists of the following components:
|
|
12
|
+
|
|
13
|
+
- **Version**: Indicates the ruleset under which the transaction is validated, or which overlay network(s) it belongs to.
|
|
14
|
+
- **Inputs**: List of references to outputs from previous transactions, showing where the bitcoins being sent were previously stored.
|
|
15
|
+
- **Outputs**: List of allocations of bitcoins, specifying the amount and conditions under which they can be spent in the future.
|
|
16
|
+
- **Lock Time**: An optional setting that specifies the earliest time or block number at which the transaction can be valid.
|
|
17
|
+
|
|
18
|
+
Transactions can also be attached to a **Merkle proof** to provide proof of inclusion in a particular block, after they have been processed.
|
|
19
|
+
|
|
20
|
+
## Inputs and Outputs
|
|
21
|
+
|
|
22
|
+
Inputs and outputs are the essential elements that make up a transaction. Understanding their structure and usage is key to mastering transaction creation and manipulation using the BSV SDK.
|
|
23
|
+
|
|
24
|
+
### Transaction Inputs
|
|
25
|
+
|
|
26
|
+
A **Transaction Input** includes the following fields:
|
|
27
|
+
|
|
28
|
+
- **Source Transaction ID**: The transaction ID (TXID) from which the input bitcoins are derived.
|
|
29
|
+
- **Source Output Index**: Specifies which output from the referenced transaction is to be spent.
|
|
30
|
+
- **Unlocking Script**: Contains signatures or other unlocking solutions that prove the right to spend the referenced previous output.
|
|
31
|
+
- **Sequence**: A number that can be used to allow transaction inputs to be updated before finalization, if it's less than 0xFFFFFFFF.
|
|
32
|
+
|
|
33
|
+
Inputs connect a new transaction back to the point in the blockchain where the bitcoins were previously recorded as outputs.
|
|
34
|
+
|
|
35
|
+
### Transaction Outputs
|
|
36
|
+
|
|
37
|
+
A **Transaction Output** consists of:
|
|
38
|
+
|
|
39
|
+
- **Satoshis**: The amount of BSV being transferred.
|
|
40
|
+
- **Locking Script**: Defines the conditions under which the output can be spent, such as requiring a digital signature from the recipient's public key.
|
|
41
|
+
|
|
42
|
+
Outputs create spendable coins that can be used as inputs in future transactions.
|
|
43
|
+
|
|
44
|
+
## Constructing a Transaction
|
|
45
|
+
|
|
46
|
+
Creating a transaction involves several clear steps, utilizing inputs and outputs to dictate where bitcoins are moving from and to:
|
|
47
|
+
|
|
48
|
+
1. **Define Outputs**: Decide the amount of BSV to transfer and the conditions under which the transfer can later be spent.
|
|
49
|
+
2. **Select Inputs**: Identify previous transaction outputs to spend that have enough balance to cover the outputs and the transaction fee.
|
|
50
|
+
3. **Calculate Fees**: Estimate the necessary transaction fee based on transaction size, where you will be broadcasting, and the level of service priority you require.
|
|
51
|
+
4. **Generate Change**: If inputs exceed the sum of outputs and fees, create change output(s) sending the excess back to the sender without re-using keys.
|
|
52
|
+
5. **Unlock Inputs**: Utilize the private keys or other mechanisms associated with the inputs you're spending to unlock each one, thereby authorizing the bitcoins to be spent.
|
|
53
|
+
6. **Complete Unlocking**: In cases of multi-party transactions, pass the transaction around to all needed parties for unlocking.
|
|
54
|
+
7. **Broadcast**: Send the final signed transaction to the BSV network for inclusion in a block, and register it with overlay networks as required.
|
|
55
|
+
|
|
56
|
+
Each of these steps is facilitated by the BSV SDK, which provides comprehensive tools and templates to handle the complexities of transaction creation, from generating cryptographic signatures to managing network broadcast clients.
|
|
57
|
+
|
|
58
|
+
## Conclusion
|
|
59
|
+
|
|
60
|
+
The BSV SDK empowers developers to build robust applications on the network by abstracting the complexities of transaction creation. By understanding how transactions are structured and built through inputs and outputs, developers can leverage the full potential of the BSV blockchain, ensuring secure, efficient, and scalable applications. You can check out an example of creating transactions [in this tutorial!](../examples/EXAMPLE_COMPLEX_TX.md)
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# Opcodes and Their Functionality Within Bitcoin Script
|
|
2
|
+
|
|
3
|
+
## Introduction
|
|
4
|
+
BSV is underpinned by a powerful scripting language that plays a crucial role in securing transactions. This language, which defines the conditions under which coins can be spent, relies heavily on "opcodes" — operational codes that manipulate and evaluate data. This document aims to demystify the functionality of these opcodes, providing examples of their use.
|
|
5
|
+
|
|
6
|
+
## Securing Coins with Script Predicates
|
|
7
|
+
Scripts secure coins through predicates. A predicate is essentially a condition that must be met for coins to be spent. In Bitcoin, these conditions are defined using a scripting language that determines how and when the coins can be transferred. The scripts ensure that only the rightful owner of the coins can spend them by satisfying the conditions laid down in the script attached to each coin or output.
|
|
8
|
+
|
|
9
|
+
## Script Execution Environment: Stacks and Scripts
|
|
10
|
+
Bitcoin's scripting system operates in a stack-based execution environment. This means that the script processes data using two primary structures:
|
|
11
|
+
- **Main stack:** Where most operations are performed.
|
|
12
|
+
- **Alt stack:** Used occasionally to provide additional stack flexibility.
|
|
13
|
+
|
|
14
|
+
Scripts in Bitcoin are divided into two parts:
|
|
15
|
+
1. **Unlocking script:** Provided by the spender of the coins, this script supplies the data needed to satisfy the conditions of the locking script.
|
|
16
|
+
2. **Locking script:** Placed by the recipient in a transaction output, this script sets the conditions under which the coins can be spent.
|
|
17
|
+
|
|
18
|
+
The execution begins with the unlocking script, which places data on the stack. Following this, the locking script is appended and continues to operate on the same stack. The spend is considered valid if, at the end of execution, the top of the stack holds a "true" value (non-zero).
|
|
19
|
+
|
|
20
|
+
## Understanding Opcodes
|
|
21
|
+
Opcodes are the operational codes used within a script to perform specific functions on the data in the stacks. Each opcode manipulates stack data to perform operations such as addition, subtraction, logical comparisons, cryptographic hashes, signature checks, and more. After executing an opcode, the results are pushed back onto the stack, altering its state for subsequent operations.
|
|
22
|
+
|
|
23
|
+
### Examples of Common Opcodes
|
|
24
|
+
- **OP_ADD:** Pops the top two items off the stack, adds them, and pushes the result back onto the stack.
|
|
25
|
+
- **OP_EQUAL:** Pops the top two items, compares them, and pushes `1` (true) if they are equal, or `0` (false) otherwise.
|
|
26
|
+
- **OP_HASH256:** Pops the top item, computes its double SHA-256 hash, and pushes the result back onto the stack.
|
|
27
|
+
- **OP_CHECKSIG:** Pops a public key and a signature from the stack and checks if the signature is valid for the given public key and wider transaction; pushes `1` if the signature is valid.
|
|
28
|
+
|
|
29
|
+
These opcodes are foundational for enabling complex scripting capabilities in BSV, allowing for the creation of various types of transactions including multi-signature wallets, escrow arrangements, sCrypt smart contracts, and much more.
|
|
30
|
+
|
|
31
|
+
## Combining Opcodes to Secure Coins
|
|
32
|
+
The true power of scripting comes from the combination of opcodes to form complex predicates. These predicates secure the coins by requiring that certain conditions be met before the coins can be spent. For example, a script might require that a transaction be signed by multiple parties (multi-signature), or that a certain amount of time elapse before the coins can be spent (timelocks).
|
|
33
|
+
|
|
34
|
+
### Implementing Cryptographic Primitives
|
|
35
|
+
Opcodes also implement various cryptographic primitives such as digital signatures and hashing. These primitives are essential for maintaining the security and integrity of transactions on the blockchain. For instance, the `OP_CHECKSIG` opcode is crucial for verifying that a transaction is authorized by the holder of the private keys associated with the coins being spent.
|
|
36
|
+
|
|
37
|
+
## Conclusion
|
|
38
|
+
By understanding the functionality of opcodes within the Bitcoin scripting language, users and developers can appreciate the flexibility and security that Bitcoin scripts provide. You can check out [this example](../examples/EXAMPLE_VERIFYING_SPENDS.md) of how to validate spends within the BSV SDK.
|