@waku/rln 0.1.1-891ee34 → 0.1.1-8928376
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/bundle/index.js +89 -16
- package/dist/.tsbuildinfo +1 -1
- package/dist/constants.d.ts +2 -2
- package/dist/constants.js +62 -9
- package/dist/constants.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/rln_contract.d.ts +9 -3
- package/dist/rln_contract.js +27 -7
- package/dist/rln_contract.js.map +1 -1
- package/package.json +1 -1
- package/src/constants.ts +63 -9
- package/src/index.ts +7 -2
- package/src/rln_contract.ts +55 -12
package/bundle/index.js
CHANGED
@@ -2001,18 +2001,71 @@ class RLNDecoder {
|
|
2001
2001
|
}
|
2002
2002
|
}
|
2003
2003
|
|
2004
|
-
|
2005
|
-
|
2006
|
-
"
|
2007
|
-
"
|
2008
|
-
"
|
2009
|
-
"
|
2004
|
+
// ref https://github.com/waku-org/waku-rln-contract/blob/19fded82bca07e7b535b429dc507cfb83f10dfcf/deployments/sepolia/WakuRlnRegistry_Implementation.json#L3
|
2005
|
+
const RLN_REGISTRY_ABI = [
|
2006
|
+
"error IncompatibleStorage()",
|
2007
|
+
"error IncompatibleStorageIndex()",
|
2008
|
+
"error NoStorageContractAvailable()",
|
2009
|
+
"error StorageAlreadyExists(address storageAddress)",
|
2010
|
+
"event AdminChanged(address previousAdmin, address newAdmin)",
|
2011
|
+
"event BeaconUpgraded(address indexed beacon)",
|
2012
|
+
"event Initialized(uint8 version)",
|
2013
|
+
"event NewStorageContract(uint16 index, address storageAddress)",
|
2014
|
+
"event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)",
|
2015
|
+
"event Upgraded(address indexed implementation)",
|
2016
|
+
"function forceProgress()",
|
2017
|
+
"function initialize(address _poseidonHasher)",
|
2018
|
+
"function newStorage()",
|
2019
|
+
"function nextStorageIndex() view returns (uint16)",
|
2020
|
+
"function owner() view returns (address)",
|
2021
|
+
"function poseidonHasher() view returns (address)",
|
2022
|
+
"function proxiableUUID() view returns (bytes32)",
|
2023
|
+
"function register(uint16 storageIndex, uint256 commitment)",
|
2024
|
+
"function register(uint256[] commitments)",
|
2025
|
+
"function register(uint16 storageIndex, uint256[] commitments)",
|
2026
|
+
"function registerStorage(address storageAddress)",
|
2027
|
+
"function renounceOwnership()",
|
2028
|
+
"function storages(uint16) view returns (address)",
|
2029
|
+
"function transferOwnership(address newOwner)",
|
2030
|
+
"function upgradeTo(address newImplementation)",
|
2031
|
+
"function upgradeToAndCall(address newImplementation, bytes data) payable",
|
2032
|
+
"function usingStorageIndex() view returns (uint16)",
|
2033
|
+
];
|
2034
|
+
// ref https://github.com/waku-org/waku-rln-contract/blob/19fded82bca07e7b535b429dc507cfb83f10dfcf/deployments/sepolia/WakuRlnStorage_0.json#L3
|
2035
|
+
const RLN_STORAGE_ABI = [
|
2036
|
+
"constructor(address _poseidonHasher, uint16 _contractIndex)",
|
2037
|
+
"error DuplicateIdCommitment()",
|
2038
|
+
"error FullTree()",
|
2039
|
+
"error InvalidIdCommitment(uint256 idCommitment)",
|
2040
|
+
"error NotImplemented()",
|
2041
|
+
"event MemberRegistered(uint256 idCommitment, uint256 index)",
|
2042
|
+
"event MemberWithdrawn(uint256 idCommitment, uint256 index)",
|
2043
|
+
"event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)",
|
2044
|
+
"function DEPTH() view returns (uint256)",
|
2045
|
+
"function MEMBERSHIP_DEPOSIT() view returns (uint256)",
|
2046
|
+
"function SET_SIZE() view returns (uint256)",
|
2047
|
+
"function contractIndex() view returns (uint16)",
|
2048
|
+
"function deployedBlockNumber() view returns (uint32)",
|
2049
|
+
"function idCommitmentIndex() view returns (uint256)",
|
2050
|
+
"function isValidCommitment(uint256 idCommitment) view returns (bool)",
|
2051
|
+
"function memberExists(uint256) view returns (bool)",
|
2052
|
+
"function members(uint256) view returns (uint256)",
|
2053
|
+
"function owner() view returns (address)",
|
2054
|
+
"function poseidonHasher() view returns (address)",
|
2055
|
+
"function register(uint256[] idCommitments)",
|
2056
|
+
"function register(uint256 idCommitment) payable",
|
2057
|
+
"function renounceOwnership()",
|
2058
|
+
"function slash(uint256 idCommitment, address receiver, uint256[8] proof) pure",
|
2059
|
+
"function stakedAmounts(uint256) view returns (uint256)",
|
2060
|
+
"function transferOwnership(address newOwner)",
|
2061
|
+
"function verifier() view returns (address)",
|
2062
|
+
"function withdraw() pure",
|
2063
|
+
"function withdrawalBalance(address) view returns (uint256)",
|
2010
2064
|
];
|
2011
2065
|
const SEPOLIA_CONTRACT = {
|
2012
2066
|
chainId: 11155111,
|
2013
|
-
|
2014
|
-
|
2015
|
-
abi: RLN_ABI,
|
2067
|
+
address: "0xF1935b338321013f11068abCafC548A7B0db732C",
|
2068
|
+
abi: RLN_REGISTRY_ABI,
|
2016
2069
|
};
|
2017
2070
|
|
2018
2071
|
var lib = {};
|
@@ -49695,24 +49748,42 @@ class RLNContract {
|
|
49695
49748
|
constructor(rlnInstance, { address, provider }) {
|
49696
49749
|
this._members = [];
|
49697
49750
|
const initialRoot = rlnInstance.getMerkleRoot();
|
49698
|
-
this.
|
49751
|
+
this.registryContract = new Contract(address, RLN_REGISTRY_ABI, provider);
|
49699
49752
|
this.merkleRootTracker = new MerkleRootTracker(5, initialRoot);
|
49700
|
-
this.membersFilter = this.contract.filters.MemberRegistered();
|
49701
49753
|
}
|
49702
49754
|
static async init(rlnInstance, options) {
|
49703
49755
|
const rlnContract = new RLNContract(rlnInstance, options);
|
49756
|
+
await rlnContract.initStorageContract(options.provider);
|
49704
49757
|
await rlnContract.fetchMembers(rlnInstance);
|
49705
49758
|
rlnContract.subscribeToMembers(rlnInstance);
|
49706
49759
|
return rlnContract;
|
49707
49760
|
}
|
49761
|
+
async initStorageContract(provider) {
|
49762
|
+
const index = await this.registryContract.usingStorageIndex();
|
49763
|
+
const address = await this.registryContract.storages(index);
|
49764
|
+
this.storageIndex = index;
|
49765
|
+
this.storageContract = new Contract(address, RLN_STORAGE_ABI, provider);
|
49766
|
+
this._membersFilter = this.storageContract.filters.MemberRegistered();
|
49767
|
+
this.deployBlock = await this.storageContract.deployedBlockNumber();
|
49768
|
+
}
|
49708
49769
|
get contract() {
|
49709
|
-
|
49770
|
+
if (!this.storageContract) {
|
49771
|
+
throw Error("Storage contract was not initialized.");
|
49772
|
+
}
|
49773
|
+
return this.storageContract;
|
49710
49774
|
}
|
49711
49775
|
get members() {
|
49712
49776
|
return this._members;
|
49713
49777
|
}
|
49778
|
+
get membersFilter() {
|
49779
|
+
if (!this._membersFilter) {
|
49780
|
+
throw Error("Members filter was not initialized.");
|
49781
|
+
}
|
49782
|
+
return this._membersFilter;
|
49783
|
+
}
|
49714
49784
|
async fetchMembers(rlnInstance, options = {}) {
|
49715
49785
|
const registeredMemberEvents = await queryFilter(this.contract, {
|
49786
|
+
fromBlock: this.deployBlock,
|
49716
49787
|
...options,
|
49717
49788
|
membersFilter: this.membersFilter,
|
49718
49789
|
});
|
@@ -49785,9 +49856,11 @@ class RLNContract {
|
|
49785
49856
|
return this.registerWithKey(identityCredential);
|
49786
49857
|
}
|
49787
49858
|
async registerWithKey(credential) {
|
49788
|
-
|
49789
|
-
|
49790
|
-
|
49859
|
+
if (!this.storageIndex) {
|
49860
|
+
throw Error("Cannot register credential, no storage contract index found.");
|
49861
|
+
}
|
49862
|
+
const txRegisterResponse = await this.registryContract.register(this.storageIndex, credential.IDCommitmentBigInt, {
|
49863
|
+
gasLimit: 100000,
|
49791
49864
|
});
|
49792
49865
|
const txRegisterReceipt = await txRegisterResponse.wait();
|
49793
49866
|
return txRegisterReceipt?.events?.[0];
|
@@ -49856,4 +49929,4 @@ async function create() {
|
|
49856
49929
|
return await rlnModule.create();
|
49857
49930
|
}
|
49858
49931
|
|
49859
|
-
export { IdentityCredential, Keystore, MerkleRootTracker, Proof, ProofMetadata, RLNContract, RLNDecoder, RLNEncoder, RLNInstance,
|
49932
|
+
export { IdentityCredential, Keystore, MerkleRootTracker, Proof, ProofMetadata, RLNContract, RLNDecoder, RLNEncoder, RLNInstance, RLN_REGISTRY_ABI, RLN_STORAGE_ABI, SEPOLIA_CONTRACT, create };
|
package/dist/.tsbuildinfo
CHANGED
@@ -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.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.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.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.esnext.intl.d.ts","../src/byte_utils.ts","../node_modules/multiformats/dist/types/src/hashes/interface.d.ts","../node_modules/multiformats/dist/types/src/bases/interface.d.ts","../node_modules/multiformats/dist/types/src/block/interface.d.ts","../node_modules/multiformats/dist/types/src/link/interface.d.ts","../node_modules/multiformats/dist/types/src/cid.d.ts","../node_modules/@libp2p/interface-peer-id/dist/src/index.d.ts","../node_modules/@multiformats/multiaddr/dist/src/protocols-table.d.ts","../node_modules/@multiformats/multiaddr/dist/src/filter/multiaddr-filter.d.ts","../node_modules/@multiformats/multiaddr/dist/src/index.d.ts","../node_modules/@libp2p/interface-peer-info/dist/src/index.d.ts","../node_modules/@waku/interfaces/dist/enr.d.ts","../node_modules/@libp2p/interfaces/dist/src/events.d.ts","../node_modules/uint8arraylist/dist/src/index.d.ts","../node_modules/@libp2p/interface-record/dist/src/index.d.ts","../node_modules/@libp2p/interface-peer-store/dist/src/index.d.ts","../node_modules/@libp2p/interfaces/dist/src/index.d.ts","../node_modules/it-stream-types/dist/src/index.d.ts","../node_modules/@libp2p/interface-connection/dist/src/status.d.ts","../node_modules/@libp2p/interface-connection/dist/src/index.d.ts","../node_modules/@libp2p/interface-stream-muxer/dist/src/index.d.ts","../node_modules/@libp2p/interface-transport/dist/src/index.d.ts","../node_modules/libp2p/node_modules/@multiformats/multiaddr/dist/src/protocols-table.d.ts","../node_modules/libp2p/node_modules/@multiformats/multiaddr/dist/src/index.d.ts","../node_modules/libp2p/node_modules/@libp2p/interface-connection/node_modules/@multiformats/multiaddr/dist/src/index.d.ts","../node_modules/libp2p/node_modules/@libp2p/interface-connection/dist/src/status.d.ts","../node_modules/libp2p/node_modules/@libp2p/interface-connection/dist/src/index.d.ts","../node_modules/@libp2p/interfaces/dist/src/startable.d.ts","../node_modules/@libp2p/interface-metrics/dist/src/index.d.ts","../node_modules/@libp2p/interface-address-manager/dist/src/index.d.ts","../node_modules/libp2p/dist/src/transport-manager.d.ts","../node_modules/libp2p/node_modules/protons-runtime/dist/src/codec.d.ts","../node_modules/libp2p/node_modules/protons-runtime/dist/src/decode.d.ts","../node_modules/libp2p/node_modules/protons-runtime/dist/src/encode.d.ts","../node_modules/libp2p/node_modules/protons-runtime/dist/src/codecs/enum.d.ts","../node_modules/libp2p/node_modules/protons-runtime/dist/src/codecs/message.d.ts","../node_modules/libp2p/node_modules/protons-runtime/dist/src/utils.d.ts","../node_modules/libp2p/node_modules/protons-runtime/dist/src/index.d.ts","../node_modules/libp2p/dist/src/identify/pb/message.d.ts","../node_modules/@libp2p/interface-registrar/dist/src/index.d.ts","../node_modules/@libp2p/interface-connection-manager/dist/src/index.d.ts","../node_modules/libp2p/dist/src/identify/index.d.ts","../node_modules/@libp2p/interface-peer-discovery/dist/src/index.d.ts","../node_modules/@libp2p/interface-dht/dist/src/index.d.ts","../node_modules/libp2p/node_modules/interface-store/dist/src/index.d.ts","../node_modules/uint8arrays/node_modules/multiformats/dist/types/src/bases/interface.d.ts","../node_modules/uint8arrays/node_modules/multiformats/dist/types/src/hashes/interface.d.ts","../node_modules/uint8arrays/node_modules/multiformats/dist/types/src/link/interface.d.ts","../node_modules/uint8arrays/node_modules/multiformats/dist/types/src/cid.d.ts","../node_modules/uint8arrays/node_modules/multiformats/dist/types/src/block/interface.d.ts","../node_modules/uint8arrays/node_modules/multiformats/dist/types/src/codecs/interface.d.ts","../node_modules/uint8arrays/node_modules/multiformats/dist/types/src/interface.d.ts","../node_modules/uint8arrays/node_modules/multiformats/dist/types/src/hashes/digest.d.ts","../node_modules/uint8arrays/node_modules/multiformats/dist/types/src/hashes/hasher.d.ts","../node_modules/uint8arrays/node_modules/multiformats/dist/types/src/varint.d.ts","../node_modules/uint8arrays/node_modules/multiformats/dist/types/src/bytes.d.ts","../node_modules/uint8arrays/node_modules/multiformats/dist/types/src/index.d.ts","../node_modules/uint8arrays/node_modules/multiformats/dist/types/src/codecs/raw.d.ts","../node_modules/uint8arrays/node_modules/multiformats/dist/types/src/codecs/json.d.ts","../node_modules/uint8arrays/node_modules/multiformats/dist/types/src/bases/base.d.ts","../node_modules/uint8arrays/node_modules/multiformats/dist/types/src/basics.d.ts","../node_modules/uint8arrays/dist/src/util/bases.d.ts","../node_modules/uint8arrays/dist/src/to-string.d.ts","../node_modules/libp2p/node_modules/interface-datastore/dist/src/key.d.ts","../node_modules/libp2p/node_modules/interface-datastore/dist/src/index.d.ts","../node_modules/@libp2p/interface-content-routing/dist/src/index.d.ts","../node_modules/libp2p/dist/src/circuit/index.d.ts","../node_modules/@libp2p/interface-connection-encrypter/dist/src/index.d.ts","../node_modules/@libp2p/interface-peer-routing/dist/src/index.d.ts","../node_modules/it-pushable/dist/src/index.d.ts","../node_modules/@libp2p/interface-pubsub/dist/src/index.d.ts","../node_modules/libp2p/dist/src/ping/index.d.ts","../node_modules/libp2p/dist/src/fetch/index.d.ts","../node_modules/libp2p/dist/src/components.d.ts","../node_modules/@libp2p/interface-keychain/dist/src/index.d.ts","../node_modules/@libp2p/interface-libp2p/dist/src/index.d.ts","../node_modules/libp2p/dist/src/keychain/cms.d.ts","../node_modules/protons-runtime/dist/src/codec.d.ts","../node_modules/protons-runtime/dist/src/decode.d.ts","../node_modules/protons-runtime/dist/src/encode.d.ts","../node_modules/protons-runtime/dist/src/codecs/enum.d.ts","../node_modules/protons-runtime/dist/src/codecs/message.d.ts","../node_modules/protons-runtime/dist/src/utils.d.ts","../node_modules/protons-runtime/dist/src/index.d.ts","../node_modules/@libp2p/crypto/dist/src/keys/keys.d.ts","../node_modules/@libp2p/crypto/dist/src/keys/interface.d.ts","../node_modules/@libp2p/crypto/dist/src/keys/key-stretcher.d.ts","../node_modules/@libp2p/crypto/dist/src/keys/ecdh.d.ts","../node_modules/@libp2p/crypto/dist/src/keys/ephemeral-keys.d.ts","../node_modules/multiformats/dist/types/src/codecs/interface.d.ts","../node_modules/multiformats/dist/types/src/interface.d.ts","../node_modules/multiformats/dist/types/src/hashes/digest.d.ts","../node_modules/multiformats/dist/types/src/hashes/hasher.d.ts","../node_modules/multiformats/dist/types/src/varint.d.ts","../node_modules/multiformats/dist/types/src/bytes.d.ts","../node_modules/multiformats/dist/types/src/index.d.ts","../node_modules/@libp2p/crypto/dist/src/keys/rsa-class.d.ts","../node_modules/@libp2p/crypto/dist/src/keys/ed25519-class.d.ts","../node_modules/@libp2p/crypto/dist/src/keys/secp256k1-class.d.ts","../node_modules/@libp2p/interface-keys/dist/src/index.d.ts","../node_modules/@libp2p/crypto/dist/src/keys/index.d.ts","../node_modules/libp2p/dist/src/keychain/index.d.ts","../node_modules/@achingbrain/nat-port-mapper/dist/src/index.d.ts","../node_modules/libp2p/dist/src/nat-manager.d.ts","../node_modules/libp2p/dist/src/address-manager/index.d.ts","../node_modules/libp2p/dist/src/peer-routing.d.ts","../node_modules/libp2p/dist/src/connection-manager/latency-monitor.d.ts","../node_modules/libp2p/dist/src/connection-manager/index.d.ts","../node_modules/libp2p/dist/src/index.d.ts","../node_modules/@waku/interfaces/dist/message.d.ts","../node_modules/@waku/interfaces/dist/protocols.d.ts","../node_modules/@waku/interfaces/dist/misc.d.ts","../node_modules/@waku/interfaces/dist/receiver.d.ts","../node_modules/@waku/interfaces/dist/filter.d.ts","../node_modules/@waku/interfaces/dist/sender.d.ts","../node_modules/@waku/interfaces/dist/light_push.d.ts","../node_modules/@waku/interfaces/dist/peer_exchange.d.ts","../node_modules/@waku/interfaces/dist/relay.d.ts","../node_modules/@waku/interfaces/dist/store.d.ts","../node_modules/@waku/interfaces/dist/waku.d.ts","../node_modules/@waku/interfaces/dist/connection_manager.d.ts","../node_modules/@waku/interfaces/dist/index.d.ts","../node_modules/@types/ms/index.d.ts","../node_modules/@types/debug/index.d.ts","../node_modules/@waku/utils/dist/bytes/index.d.ts","../src/epoch.ts","../node_modules/@waku/zerokit-rln-wasm/rln_wasm.d.ts","../src/resources/verification_key.js","../src/witness_calculator.d.ts","../src/rln.ts","../src/message.ts","../src/codec.ts","../src/constants.ts","../node_modules/@chainsafe/bls-keystore/lib/types.d.ts","../node_modules/@chainsafe/bls-keystore/lib/kdf.d.ts","../node_modules/@chainsafe/bls-keystore/lib/checksum.d.ts","../node_modules/@chainsafe/bls-keystore/lib/cipher.d.ts","../node_modules/@chainsafe/bls-keystore/lib/functional.d.ts","../node_modules/@chainsafe/bls-keystore/lib/class.d.ts","../node_modules/@chainsafe/bls-keystore/lib/schema-validation.d.ts","../node_modules/@chainsafe/bls-keystore/lib/index.d.ts","../node_modules/ethereum-cryptography/sha256.d.ts","../node_modules/ethereum-cryptography/node_modules/@noble/hashes/utils.d.ts","../node_modules/ethereum-cryptography/node_modules/@noble/hashes/_assert.d.ts","../node_modules/ethereum-cryptography/utils.d.ts","../node_modules/@types/lodash/common/common.d.ts","../node_modules/@types/lodash/common/array.d.ts","../node_modules/@types/lodash/common/collection.d.ts","../node_modules/@types/lodash/common/date.d.ts","../node_modules/@types/lodash/common/function.d.ts","../node_modules/@types/lodash/common/lang.d.ts","../node_modules/@types/lodash/common/math.d.ts","../node_modules/@types/lodash/common/number.d.ts","../node_modules/@types/lodash/common/object.d.ts","../node_modules/@types/lodash/common/seq.d.ts","../node_modules/@types/lodash/common/string.d.ts","../node_modules/@types/lodash/common/util.d.ts","../node_modules/@types/lodash/index.d.ts","../node_modules/@types/uuid/index.d.ts","../node_modules/@types/uuid/index.d.mts","../node_modules/@chainsafe/bls-keystore/lib/password.d.ts","../node_modules/ethereum-cryptography/node_modules/@noble/hashes/sha3.d.ts","../node_modules/ethereum-cryptography/keccak.d.ts","../src/keystore/types.ts","../src/keystore/cipher.ts","../src/keystore/credential_validation_generated.ts","../src/keystore/keystore_validation_generated.ts","../src/keystore/schema_validator.ts","../src/keystore/keystore.ts","../src/keystore/index.ts","../node_modules/@ethersproject/bytes/lib/index.d.ts","../node_modules/@ethersproject/bignumber/lib/bignumber.d.ts","../node_modules/@ethersproject/bignumber/lib/fixednumber.d.ts","../node_modules/@ethersproject/bignumber/lib/index.d.ts","../node_modules/@ethersproject/abi/lib/fragments.d.ts","../node_modules/@ethersproject/abi/lib/coders/abstract-coder.d.ts","../node_modules/@ethersproject/abi/lib/abi-coder.d.ts","../node_modules/@ethersproject/properties/lib/index.d.ts","../node_modules/@ethersproject/abi/lib/interface.d.ts","../node_modules/@ethersproject/abi/lib/index.d.ts","../node_modules/@ethersproject/networks/lib/types.d.ts","../node_modules/@ethersproject/networks/lib/index.d.ts","../node_modules/@ethersproject/transactions/lib/index.d.ts","../node_modules/@ethersproject/web/lib/index.d.ts","../node_modules/@ethersproject/abstract-provider/lib/index.d.ts","../node_modules/@ethersproject/abstract-signer/lib/index.d.ts","../node_modules/@ethersproject/contracts/lib/index.d.ts","../node_modules/@ethersproject/logger/lib/index.d.ts","../node_modules/@ethersproject/wordlists/lib/wordlist.d.ts","../node_modules/@ethersproject/wordlists/lib/wordlists.d.ts","../node_modules/@ethersproject/wordlists/lib/index.d.ts","../node_modules/@ethersproject/hdnode/lib/index.d.ts","../node_modules/@ethersproject/signing-key/lib/index.d.ts","../node_modules/@ethersproject/json-wallets/lib/crowdsale.d.ts","../node_modules/@ethersproject/json-wallets/lib/inspect.d.ts","../node_modules/@ethersproject/json-wallets/lib/keystore.d.ts","../node_modules/@ethersproject/json-wallets/lib/index.d.ts","../node_modules/@ethersproject/wallet/lib/index.d.ts","../node_modules/@ethersproject/constants/lib/addresses.d.ts","../node_modules/@ethersproject/constants/lib/bignumbers.d.ts","../node_modules/@ethersproject/constants/lib/hashes.d.ts","../node_modules/@ethersproject/constants/lib/strings.d.ts","../node_modules/@ethersproject/constants/lib/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/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/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/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/@ethersproject/providers/lib/formatter.d.ts","../node_modules/@ethersproject/providers/lib/base-provider.d.ts","../node_modules/@ethersproject/providers/lib/json-rpc-provider.d.ts","../node_modules/@ethersproject/providers/lib/websocket-provider.d.ts","../node_modules/@ethersproject/providers/lib/url-json-rpc-provider.d.ts","../node_modules/@ethersproject/providers/lib/alchemy-provider.d.ts","../node_modules/@ethersproject/providers/lib/ankr-provider.d.ts","../node_modules/@ethersproject/providers/lib/cloudflare-provider.d.ts","../node_modules/@ethersproject/providers/lib/etherscan-provider.d.ts","../node_modules/@ethersproject/providers/lib/fallback-provider.d.ts","../node_modules/@ethersproject/providers/lib/ipc-provider.d.ts","../node_modules/@ethersproject/providers/lib/infura-provider.d.ts","../node_modules/@ethersproject/providers/lib/json-rpc-batch-provider.d.ts","../node_modules/@ethersproject/providers/lib/nodesmith-provider.d.ts","../node_modules/@ethersproject/providers/lib/pocket-provider.d.ts","../node_modules/@ethersproject/providers/lib/web3-provider.d.ts","../node_modules/@ethersproject/providers/lib/index.d.ts","../node_modules/@ethersproject/address/lib/index.d.ts","../node_modules/@ethersproject/base64/lib/base64.d.ts","../node_modules/@ethersproject/base64/lib/index.d.ts","../node_modules/@ethersproject/basex/lib/index.d.ts","../node_modules/@ethersproject/hash/lib/id.d.ts","../node_modules/@ethersproject/hash/lib/namehash.d.ts","../node_modules/@ethersproject/hash/lib/message.d.ts","../node_modules/@ethersproject/hash/lib/typed-data.d.ts","../node_modules/@ethersproject/hash/lib/index.d.ts","../node_modules/@ethersproject/keccak256/lib/index.d.ts","../node_modules/@ethersproject/sha2/lib/types.d.ts","../node_modules/@ethersproject/sha2/lib/sha2.d.ts","../node_modules/@ethersproject/sha2/lib/index.d.ts","../node_modules/@ethersproject/solidity/lib/index.d.ts","../node_modules/@ethersproject/random/lib/random.d.ts","../node_modules/@ethersproject/random/lib/shuffle.d.ts","../node_modules/@ethersproject/random/lib/index.d.ts","../node_modules/@ethersproject/rlp/lib/index.d.ts","../node_modules/@ethersproject/strings/lib/bytes32.d.ts","../node_modules/@ethersproject/strings/lib/idna.d.ts","../node_modules/@ethersproject/strings/lib/utf8.d.ts","../node_modules/@ethersproject/strings/lib/index.d.ts","../node_modules/@ethersproject/units/lib/index.d.ts","../node_modules/ethers/lib/utils.d.ts","../node_modules/ethers/lib/_version.d.ts","../node_modules/ethers/lib/ethers.d.ts","../node_modules/ethers/lib/index.d.ts","../src/root_tracker.ts","../src/rln_contract.ts","../src/index.ts","../src/witness_calculator.js","../node_modules/@types/mocha/index.d.ts"],"fileInfos":[{"version":"f20c05dbfe50a208301d2a1da37b9931bce0466eb5a1f4fe240971b4ecc82b67","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","impliedFormat":1},{"version":"7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","impliedFormat":1},{"version":"8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","impliedFormat":1},{"version":"5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","impliedFormat":1},{"version":"e6b724280c694a9f588847f754198fb96c43d805f065c3a5b28bbc9594541c84","impliedFormat":1},{"version":"1fc5ab7a764205c68fa10d381b08417795fc73111d6dd16b5b1ed36badb743d9","impliedFormat":1},{"version":"9b087de7268e4efc5f215347a62656663933d63c0b1d7b624913240367b999ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"adb996790133eb33b33aadb9c09f15c2c575e71fb57a62de8bf74dbf59ec7dfb","affectsGlobalScope":true,"impliedFormat":1},{"version":"8cc8c5a3bac513368b0157f3d8b31cfdcfe78b56d3724f30f80ed9715e404af8","affectsGlobalScope":true,"impliedFormat":1},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true,"impliedFormat":1},{"version":"c5c05907c02476e4bde6b7e76a79ffcd948aedd14b6a8f56e4674221b0417398","affectsGlobalScope":true,"impliedFormat":1},{"version":"0d5f52b3174bee6edb81260ebcd792692c32c81fd55499d69531496f3f2b25e7","affectsGlobalScope":true,"impliedFormat":1},{"version":"55f400eec64d17e888e278f4def2f254b41b89515d3b88ad75d5e05f019daddd","affectsGlobalScope":true,"impliedFormat":1},{"version":"181f1784c6c10b751631b24ce60c7f78b20665db4550b335be179217bacc0d5f","affectsGlobalScope":true,"impliedFormat":1},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true,"impliedFormat":1},{"version":"75ec0bdd727d887f1b79ed6619412ea72ba3c81d92d0787ccb64bab18d261f14","affectsGlobalScope":true,"impliedFormat":1},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true,"impliedFormat":1},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true,"impliedFormat":1},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true,"impliedFormat":1},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true,"impliedFormat":1},{"version":"81cac4cbc92c0c839c70f8ffb94eb61e2d32dc1c3cf6d95844ca099463cf37ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true,"impliedFormat":1},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true,"impliedFormat":1},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true,"impliedFormat":1},{"version":"d154ea5bb7f7f9001ed9153e876b2d5b8f5c2bb9ec02b3ae0d239ec769f1f2ae","affectsGlobalScope":true,"impliedFormat":1},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true,"impliedFormat":1},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true,"impliedFormat":1},{"version":"9d57b2b5d15838ed094aa9ff1299eecef40b190722eb619bac4616657a05f951","affectsGlobalScope":true,"impliedFormat":1},{"version":"6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de","affectsGlobalScope":true,"impliedFormat":1},{"version":"6e7997ef61de3132e4d4b2250e75343f487903ddf5370e7ce33cf1b9db9a63ed","affectsGlobalScope":true,"impliedFormat":1},{"version":"2ad234885a4240522efccd77de6c7d99eecf9b4de0914adb9a35c0c22433f993","affectsGlobalScope":true,"impliedFormat":1},{"version":"09aa50414b80c023553090e2f53827f007a301bc34b0495bfb2c3c08ab9ad1eb","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7f680a43f8cd12a6b6122c07c54ba40952b0c8aa140dcfcf32eb9e6cb028596","affectsGlobalScope":true,"impliedFormat":1},{"version":"3787b83e297de7c315d55d4a7c546ae28e5f6c0a361b7a1dcec1f1f50a54ef11","affectsGlobalScope":true,"impliedFormat":1},{"version":"e7e8e1d368290e9295ef18ca23f405cf40d5456fa9f20db6373a61ca45f75f40","affectsGlobalScope":true,"impliedFormat":1},{"version":"faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e","affectsGlobalScope":true,"impliedFormat":1},{"version":"06393d13ea207a1bfe08ec8d7be562549c5e2da8983f2ee074e00002629d1871","affectsGlobalScope":true,"impliedFormat":1},{"version":"775d9c9fd150d5de79e0450f35bc8b8f94ae64e3eb5da12725ff2a649dccc777","affectsGlobalScope":true,"impliedFormat":1},{"version":"b248e32ca52e8f5571390a4142558ae4f203ae2f94d5bac38a3084d529ef4e58","affectsGlobalScope":true,"impliedFormat":1},{"version":"52d1bb7ab7a3306fd0375c8bff560feed26ed676a5b0457fa8027b563aecb9a4","affectsGlobalScope":true,"impliedFormat":1},{"version":"ff77107ca6bf9d21ba1eb7eeefff1a0b951ebc57c04b171c1956360ba630eef0","signature":"60fd8e1d8095e876caeb2704b71d332cbda552ecdfc1f36919256a463e4d2567","impliedFormat":99},{"version":"65da6f0b8f50b27e05ebf35c88a8757eb4308751cdf2b1064a0e310a2a485895","impliedFormat":99},{"version":"2e3dc1d28f2467b2af0c931a3b0d2c595746a2f21818fc3c7b5d050996ace788","impliedFormat":99},{"version":"237be372eeb9a7ce07c6b2a21358f22772cde924614d67de175a4ac0ba3eb486","impliedFormat":99},{"version":"862eacc247d6c92524d7879feac6da363f55428cc78270bce7b14f2d3d0b0cef","impliedFormat":99},{"version":"f55f3ab9485b5fd1a3ba3a5a53e680cb8d3acc3552816a5d58a1fa26324262d0","impliedFormat":99},{"version":"ee93f3313289b31afd1544da65086607942df227eb61aedf488b7c072aa1128f","impliedFormat":99},{"version":"5d055d8b54e2dec3fe4aa417f5f664658b78123e83e8735047285f99a1d24065","impliedFormat":99},{"version":"42b5333564fef3c9becbe8daf55b1ea124514cd86c2f8bed401d2a3f0037b3b1","impliedFormat":99},{"version":"109970171acb66c4c03fa6ba9d0a3bc2bf43c12540db2b0842d25d54fbe11f65","impliedFormat":99},{"version":"edb50eace77052203c3bc6eb251fe31f44ab0107e2b6d949ec983a918726aaf4","impliedFormat":99},{"version":"a5419b108da7e4c0241d74ab53bf2041c62e77815965d24605c2407415f11c5d","impliedFormat":99},{"version":"4a5612eb59f581a5b8e05d22e668b4199787751266a0291e3e07113fc52abf2a","impliedFormat":99},{"version":"ea86fe238f679714f2b3662d9d932bc3b47a0500894985718243167043f2bda8","impliedFormat":99},{"version":"866f0c4f16380a56653adc6cbeac08c58c626dabb431f0fa6cc2ba07874836d8","impliedFormat":99},{"version":"e8c5b68c1182684e8cfc177430b80fef003976d1dbde326087c28f5125fe4b5d","impliedFormat":99},{"version":"a807c0a82557d68f6f0464d6af0a6566d1ef708f57c7d1d7dd8dde28879635bc","impliedFormat":99},{"version":"a2023e18c62b1109f17241fb1f90a84e75fffcb3ee9265d2e9bc0fa40b6ede42","impliedFormat":99},{"version":"6666d48a46dbfd565490e7f8789093e2392c5bdcc3a380dfdd91c77237e43101","impliedFormat":99},{"version":"3ccf65e2230413ab1facbad92a2fb77b8e2bcd314618d0ebc12f6cb7aaa21619","impliedFormat":99},{"version":"4c5e54a2d502770a63859a00fbf77e8b91ce76b18080278f62866e7cdb582798","impliedFormat":99},{"version":"71dfda7df8d05d2d54627963af1c3c675ef99363d421b7ff42ae237d038db4ce","impliedFormat":99},{"version":"5d055d8b54e2dec3fe4aa417f5f664658b78123e83e8735047285f99a1d24065","impliedFormat":99},{"version":"1b03f8d19b753269d85e2e50ec2a2866bf349fb4f6e72aef6559e94c64511dee","impliedFormat":99},{"version":"109970171acb66c4c03fa6ba9d0a3bc2bf43c12540db2b0842d25d54fbe11f65","impliedFormat":99},{"version":"6666d48a46dbfd565490e7f8789093e2392c5bdcc3a380dfdd91c77237e43101","impliedFormat":99},{"version":"6377354dd753557d479933e0bec6ca6836f839c87394ecb071e85f062b708058","impliedFormat":99},{"version":"16c594cd8a44be9f5398d3fc7dbc9575f0b67d91a6553f35bd3576136862b32b","impliedFormat":99},{"version":"0fc1e0effc8ea83ceca9a1ff36c2696489fefea040d33fc5cbe244111333fcd4","impliedFormat":99},{"version":"0dd67171a4a3fa82044faec51befa11ab96f9205fd8cc96be09de275b65d36ab","impliedFormat":99},{"version":"42570779c28480ae0d1fa0695974a888305ee2b2efd37bacdeb57204dec843db","impliedFormat":99},{"version":"20e85d1b2ce7381a938a25a725a90f8610e68862c5a661acfeffaacd6513d392","impliedFormat":99},{"version":"667c9ac7c2f61c4a36220c2fa02f848a170aa96d3a58be32a5831aad86330da2","impliedFormat":99},{"version":"eb15dfd1f8b6da5f546fe29a6a0f0de4ae6dbd4a5577af4eba4c8a54548ef0a2","impliedFormat":99},{"version":"01443e5da049881a99f223c72617d4bb1d8854930d03deceb628e4be83df1e4a","impliedFormat":99},{"version":"76513b0c51c81a929f4f90694edf4dcc85f71bb46121b4192b5530e0601f9d81","impliedFormat":99},{"version":"a0263cc045540023e72c993a26fd1bef3adf8674b9719272009134c56ecfc336","impliedFormat":99},{"version":"df162b6f89985144d8aedccc36dfc366ab5e562ba8615125b2bfa25273f3006b","impliedFormat":99},{"version":"0820608ae5bf3995d77eedf0fa7f987c0d5c7c9592fdc0bcb391fb742d5067a0","impliedFormat":99},{"version":"14b8a1dd226271e6b045d91262602b15820ff871b3dab24510a15e6989d05a5d","impliedFormat":99},{"version":"2596013e7e3f002455e29bad0a70e0ae1a1364cac8584d2590b73133e63d6073","impliedFormat":99},{"version":"274b714a925cc417f249f430b9c5c3ec80986044d8322d41e40fd39a7d154fa8","impliedFormat":99},{"version":"70cbb43b1e838bb77b16e1085115494c8b6925a954edf7fbdd494ad56a88adb8","impliedFormat":99},{"version":"ad716342f559ff88871c01a351dbf89fe72c8313f329cd2a714f09f532c50eab","impliedFormat":99},{"version":"6adc54eb855f3fda2603173a431be81830172099df37ddda11b6730c1c8d9147","impliedFormat":1},{"version":"438ad3eed057c98e23b55ffa592f96269f07242cce80ecb8ed823574de77aab0","impliedFormat":99},{"version":"8eef7568d606bb74f6fa6411b6c067637777f85c00079723a9397120dd92b350","impliedFormat":99},{"version":"2b74d6d9875fc0b0b512b5c6f1f1ca53d050da82909f72b4cc2cdef317695aba","impliedFormat":99},{"version":"2a4905817a3f71d0739ed8bfb7399ec43994c9a11b20ff872b1a958edbad1cba","impliedFormat":99},{"version":"ae330d2797dc8a25dc36f0ade8a4a84c826d6dd4f108af61448327c9e8acac4a","impliedFormat":99},{"version":"fc018e192395d4243f43355c9eec40d33b8e7e7b461d693b84472aba9b099e98","impliedFormat":99},{"version":"e1fe04ff1ffecfb18420f0895d0cd2652f98a27def5c33aae5ef328f186c905b","impliedFormat":99},{"version":"635e7c978a30ab2013a37c4d05d0d081e58e4ad867db46a009412ad24ee426d7","impliedFormat":99},{"version":"9ebc2216a784e7fc97775fb7ab6976c6e2eb88662ff02a1a3c89a10546dac173","impliedFormat":99},{"version":"87b44430497cae7542bbd5ac2fb6663df6a465dea7a46be58a49cd9416530439","impliedFormat":99},{"version":"32b67d761db3999f1e482d0add405b695d3ec5607e07ae4c963a96334c331814","impliedFormat":99},{"version":"4e3ffdea3d82359fb81c9187e3d1f3ca4101963ae5e664ab47484cf61af50ee9","impliedFormat":99},{"version":"474ab86e676e0c1b664bfcd21b1e58bed351f3390ba1d892e8da703f371b7a4e","impliedFormat":99},{"version":"fb7a601066e19b5d0c173b564bd46b358cf00c9040e79fb6fd427b7aa223eed1","impliedFormat":99},{"version":"cf59d474e0bb4c2f3bb3be647b435891c75115f1aa9e2908b28df9dea1604be2","impliedFormat":99},{"version":"1535a7688c7368b2d187873760dd26c14ed28fbc0802e521aae65c30bfbb434e","impliedFormat":99},{"version":"c0fdc1c9e8770da790089cb0d263670cb7a22ff4193b352717936d0dd08fe26b","impliedFormat":99},{"version":"a7975589eea94f2a13153955364398522d9a265aa2a52def61d29f752b48cc91","impliedFormat":99},{"version":"531556008024c69163c0d120823a69e7a6a5be1279ea87fc725a63dc386278b7","impliedFormat":99},{"version":"df99b5b6041e9e37b46c876cd487020e4bc9e02a519fa4a735cbe18f5c4f2f38","impliedFormat":99},{"version":"272cd5e6428b68d973ce707329c3f621ac6b3eb4bf5bd4421b1106299600ddde","impliedFormat":99},{"version":"2202644315d85ab8985d4f72fe136c00e53db91ac06a0646eff7980e55bdacb3","impliedFormat":99},{"version":"cd5ab2f30a27d53001804b7ef51758a79b73e4ccb7716b8e2ab8e17d69a7183b","impliedFormat":99},{"version":"9080b537cd4fa24273477f33faf5f983e5f10aa386c2de8fcb6de837c9cc9763","impliedFormat":99},{"version":"d34a8917095f11006957bed03e1e60dacc0b82906f5d0ddc87b959e283fbb5cc","impliedFormat":99},{"version":"bffe8a5db9410d2f3320df7016f83e9de47328e377aa78b9aaed1fe6d5db9d66","impliedFormat":99},{"version":"a9dc4418352bc4a8d1e9314aba1e29327b17d06c604b397c6140d6488c5b022a","impliedFormat":99},{"version":"6adcf362e079c177ea4730c8b7beb3e9848b3f970ef08b497a641e034b0a0ece","impliedFormat":99},{"version":"114ef8adba09ab579b6bd6d16b2c83ddea02c1f5ff598f3144f2c3853ef3eb7d","impliedFormat":99},{"version":"1217c84b164e559b2371aea1b8c11eea9f95e123dab98942c8a5a4aacc2ad252","impliedFormat":99},{"version":"28092d5b5aea82adc509a3d522d265d9d5a8a0ddf92f94c8fb336c5787893030","impliedFormat":99},{"version":"995a3938e28f1a7e359847f83b43951c05727b6ca42398982778adc8b9a58609","impliedFormat":99},{"version":"77411d10dad0e74a86ce28dd0f720cce2947421e42f3fb5d1849bc14520f9b5b","impliedFormat":99},{"version":"667c9ac7c2f61c4a36220c2fa02f848a170aa96d3a58be32a5831aad86330da2","impliedFormat":99},{"version":"eb15dfd1f8b6da5f546fe29a6a0f0de4ae6dbd4a5577af4eba4c8a54548ef0a2","impliedFormat":99},{"version":"01443e5da049881a99f223c72617d4bb1d8854930d03deceb628e4be83df1e4a","impliedFormat":99},{"version":"a380f922477db0b9b4a17cde7d29585e2280036fd62ac4564814d4844b64717a","impliedFormat":99},{"version":"a0263cc045540023e72c993a26fd1bef3adf8674b9719272009134c56ecfc336","impliedFormat":99},{"version":"df162b6f89985144d8aedccc36dfc366ab5e562ba8615125b2bfa25273f3006b","impliedFormat":99},{"version":"1a57e52e42a8ff2121d47cba8133c73b4e10ede7252881dc131cf514b28f884e","impliedFormat":99},{"version":"cfb5cd87dcce3ac2d6e4e575ae732791e1d77e047c0018bfc5f9e4d1ba355719","impliedFormat":99},{"version":"a979d3d312f1d879a5c77493697380b6caae9333e2fe0f51bb0fb0473dc211ba","impliedFormat":99},{"version":"aaf4673898dca18c059997aae0e8ae725215c8ee0998e9d4a6fd173384276748","impliedFormat":99},{"version":"b90473059128d1a4c028852a710058a3a8944835188672f5846deba05a1e778e","impliedFormat":99},{"version":"8ad13afb5324460426b210f7c5040d3d19375accd24e22bb52a534c728aca73e","impliedFormat":99},{"version":"e1fe04ff1ffecfb18420f0895d0cd2652f98a27def5c33aae5ef328f186c905b","impliedFormat":99},{"version":"635e7c978a30ab2013a37c4d05d0d081e58e4ad867db46a009412ad24ee426d7","impliedFormat":99},{"version":"b27c2a28daf3e502ae6b631cbf51881247fffd3e0163520bc5904604f9e48096","impliedFormat":99},{"version":"87b44430497cae7542bbd5ac2fb6663df6a465dea7a46be58a49cd9416530439","impliedFormat":99},{"version":"32b67d761db3999f1e482d0add405b695d3ec5607e07ae4c963a96334c331814","impliedFormat":99},{"version":"8747571dae434deca4847b49e09b5421d7068b0956a1df841756812645d4e1ed","impliedFormat":99},{"version":"216601fa3da32170d99a6cbdea143a00dfd5a7bfddcf231126493c0ab992daf4","impliedFormat":99},{"version":"06245aedbc73b4f39fabd67ab13f451e009489bd66dac614184c8f97034f8016","impliedFormat":99},{"version":"b3bff8270798e03d00349137271e3f11074ec5281a393289dd8f33f37627828b","impliedFormat":99},{"version":"3b65ca51bc8915ae230bb40cb6a9662bcdcde83c402f57d7f8b8c803d497d0af","impliedFormat":99},{"version":"28393110732dca5855c0fd444777dc978d010ecba3204c4c48cfa26ee612bc13","impliedFormat":99},{"version":"01fd310805f9c29fc38a6580e32f75291d5dd3918e7acdfc7d50548ba0c4bf9b","impliedFormat":99},{"version":"f569da0d6f4c6fb153811dd6b7d34afb4511c7d85f5089e30a1db78004975ec1","impliedFormat":99},{"version":"537b1070107a0454a2fe365a633555700fff55a4b3e15d55520633b93dbf96d1","impliedFormat":99},{"version":"6b616e00e177a11c8054c70c821ca2d0c976403d11ad466385dddc89245e7ade","impliedFormat":99},{"version":"8dac050016c78a797699221c95d569c47ea4176e403b47f9f5a2e95afe26cdd6","impliedFormat":99},{"version":"d8a63ecc9188f8ef5fce8c82ea2c691acce9a152b8bd07d75a6531c7d4c07df9","impliedFormat":99},{"version":"4967ab74e79f8d087627020dd95dd6f803b79a14410acb11b4c8a33db61bdcf3","impliedFormat":99},{"version":"41326ccdc0707b973e3a285711e4d4ff37b999745d1539e346800a8f1db8e702","impliedFormat":99},{"version":"55ceb2bf66892116339189e65e54fb1b22def0d6aec0a64ff0038e69c079b1c7","impliedFormat":99},{"version":"d645480bf6b4bbea9b456d72dc0bf48db82b8218f80134d6d1f0e23123279d13","impliedFormat":99},{"version":"b2f91bd2d0f60e3dca8217d9e405b594c1268f51306bca54b6b6b50d76177a43","impliedFormat":99},{"version":"a6ba587a908313fff2672c8fa74f1f93c3d74861464488c352304f20d4883e27","impliedFormat":99},{"version":"c4b62e88d338895f62ea1c2eecff4dae3ea7d6c5aa08436f89960bebade12be9","impliedFormat":99},{"version":"0c5bc6a0a6664bfcb6d53bec072fe1b83e129ea965143e826b7e3f40b0c8fa96","impliedFormat":99},{"version":"2e1d641e085f3fad3bfaa36a3aa917703f314cd3e52057538554c8f5a1362872","impliedFormat":99},{"version":"94fc6dd8f95aaf163e5cde84558bf45867fccacfb2632c6e85265efda6dbc0a4","impliedFormat":99},{"version":"eb6527640f6cd73d8b1350ed74cf374d5d08a951f78bebbf8f1f0786ad914e41","impliedFormat":99},{"version":"9baaecd1ece45f7966156fcb69f9d366aed3d1e8e604e58042970de681228929","impliedFormat":99},{"version":"15a6ebf6dc00e8474f7ee0e2c6321b7ad328b4b59d03ee7b103c94a71bbd3a7e","impliedFormat":99},{"version":"3e836ec68dd734248c913405f458ed2c66565c4fa4647aa1d0cb8fe5f35e2d66","impliedFormat":99},{"version":"dd4f10fd0eab2df1b95f1da2de90806cdbe5b9c9552596115521d36e2fd9da4f","impliedFormat":99},{"version":"6a9c5127096b35264eb7cd21b2417bfc1d42cceca9ba4ce2bb0c3410b7816042","impliedFormat":1},{"version":"78828b06c0d3b586954015e9ebde5480b009e166c71244763bda328ec0920f41","impliedFormat":1},{"version":"f98f7fd5c208374f072a67a46306ab9b3f914554b4ebb673fb805e13a4119b6c","impliedFormat":99},{"version":"e9318530496429d8c5f5a39ce1f0eaf39ecf0a779a0e2f0f54ab37cd1ec057b6","signature":"b5b1f8f8b94f35a0a1b59e923899562482f6c99b912a0c2fa9424410fdd6f910","impliedFormat":99},{"version":"4a8ba0a75f66d19e6de5e1af20301769e3c2922b9ed766849e4134d32090854b","impliedFormat":1},{"version":"4e5dd895ed64dedb1a4a959ae8236a5f7fb803267a2986498d946b68a5dbde16","signature":"8e87acd8260ebbda136579bdf35e3535475864e40a3fd7ed09f45bd731fa6c3a","impliedFormat":99},{"version":"23c811b86e2e70be10ba78aba44942fb7dea4d7ca01cfbc14524508c5efbdc27","impliedFormat":99},{"version":"eae2bbd6b338083db08aba545813ac3b69b059143b3db4577a488084baa088dd","signature":"1005bd68c0e2012ed116b83235ecef9a8c05d56f905f31fa091dff6819df2879","impliedFormat":99},{"version":"5cc8e8f6ab452f986e30bdeeba5ed3fbc37300ac3a233af794f505ba41694955","signature":"adb0928b920e0cad8efd70e2c47e84ebad4bec9134e3caae137df49f65160450","impliedFormat":99},{"version":"cc704dd72d42219ff6f6dd38c0585364940763337412b253c9a84bd9440e4226","signature":"7ce814a75931a044a619f099254e6dd5df1f1f96ce1442a24c135e5c68696f58","impliedFormat":99},{"version":"6b812887bda525fca50cb8b789836117d11393592dade7e0d32dd08d5669e9e1","signature":"0aeaa195975e86ad265ff27f7dc362d15252fb59ddfc8cdb0cf47b8047804651","impliedFormat":99},{"version":"5ccd75f0f34649b7e7e02c4c1fc13ca55245ee2b3fd03afe7b33c479528955ba","impliedFormat":1},{"version":"762eb5c667538d6af830a3d05047850acf463528bfbfc8bc2b136075582a64a8","impliedFormat":1},{"version":"a67d4361c72e0da01d7de8f4e8c72789700f3ff4864ef1ccb939703cbd5e4717","impliedFormat":1},{"version":"b2954c77d0660b17248dba85b262bee3af5e1e526d1a0a4fb63c1583db937589","impliedFormat":1},{"version":"dd5d336287e57034dff2b371d0b79dbd257ef8231752955a35d28bdfaba357b5","impliedFormat":1},{"version":"93f13ccf02b981dac3f2c600effece96e433585c8ae54befe9721b5a818538a7","impliedFormat":1},{"version":"0f0b7504b03d06d78c1bb78d2618c3c017a5e35971b0b51c7d53c3fd29054250","impliedFormat":1},{"version":"cdfc24664ebc99ea6ea6357d75dc30b5dd161f18de7e6512786796fad0a592a7","impliedFormat":1},{"version":"f2ee0a1cea636103bf8ba90c36d798d1c39aaf9c2cbfa4800f09279232900661","impliedFormat":1},{"version":"3c3ca314a2b01902ef19b499be6e052925a849f14e2d9185afb323df3d3a72b6","impliedFormat":1},{"version":"d77dd6161e57ca9e7603f50263cfa1e8bec67e54502f730becb152e79f55324e","impliedFormat":1},{"version":"05b392be92f47b0460bb9b3e8566ef966ed3c691f8ec8198310ffba12f4080ee","impliedFormat":1},{"version":"32ab25b7b28b24a138d879ca371b18c8fdfdd564ad5107e1333c5aa5d5fea494","impliedFormat":1},{"version":"458111fc89d11d2151277c822dfdc1a28fa5b6b2493cf942e37d4cd0a6ee5f22","impliedFormat":1},{"version":"da2b6356b84a40111aaecb18304ea4e4fcb43d70efb1c13ca7d7a906445ee0d3","impliedFormat":1},{"version":"187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42","impliedFormat":1},{"version":"febf0b2de54781102b00f61653b21377390a048fbf5262718c91860d11ff34a6","impliedFormat":1},{"version":"6f294731b495c65ecf46a5694f0082954b961cf05463bea823f8014098eaffa0","impliedFormat":1},{"version":"0aaef8cded245bf5036a7a40b65622dd6c4da71f7a35343112edbe112b348a1e","impliedFormat":1},{"version":"00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a","impliedFormat":1},{"version":"dcd91d3b697cb650b95db5471189b99815af5db2a1cd28760f91e0b12ede8ed5","impliedFormat":1},{"version":"3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd","impliedFormat":1},{"version":"b03afe4bec768ae333582915146f48b161e567a81b5ebc31c4d78af089770ac9","impliedFormat":1},{"version":"df996e25faa505f85aeb294d15ebe61b399cf1d1e49959cdfaf2cc0815c203f9","impliedFormat":1},{"version":"30abc554c7ad13063a02ddd06757929b34357aea1f6fcf4ca39114cb0fc19384","impliedFormat":1},{"version":"fab58e600970e66547644a44bc9918e3223aa2cbd9e8763cec004b2cfb48827e","impliedFormat":1},{"version":"27c7c17a5dfd59eedb5a17f17245612eda203b09acd148456a90e12cdbd73769","impliedFormat":99},{"version":"d4c56de1982dffbc7bfea0025093285874f70c259be043a7d1fc281220008418","impliedFormat":1},{"version":"ffc3212863d8ff2caa53d212bdfeee8d19e5528dd3a25337a211692ff6c5e7f5","impliedFormat":1},{"version":"05bb4c3441e49099eea24f828288b34cbccd18d8869039fd5c44832bfefa7408","impliedFormat":1},{"version":"e28b3cfb92dea918065ea34bf185d6365355c2e4c308e190f27e87424a1d133a","signature":"bb3a3a7e5d1abb83649dc4cea1256e898723601884a20851dca5b79b06c370e8","impliedFormat":99},{"version":"3c773b6c03769ce47f10f321bb764b6368f7b42e548ca0921e185efbee24f4af","signature":"3fec22e71eb48a5e3e8fed4d63c21440fa9016ee0eb382db61c3235c4db5281d","impliedFormat":99},{"version":"882dff9c00e22a508777b48688e46fe8c2634e738099f8db4ae0219935184f13","signature":"f18068deda701d47835307f40140659c29aa227073a768c3d8b1814dcbfabda3","impliedFormat":99},{"version":"5c8dba0075f82dbf52309a4cd94a5c4a4f617ee41dbe58ecf29b7676009953b6","signature":"48e23e94b09582adc5aad7072838e17379723f0a7abd4245f873c99b96e4349a","impliedFormat":99},{"version":"8b5dbe118cfa320ca901b6afe1109611fbde78a71d3ae74321da8fb7c3b7044a","signature":"3137f61fb99663553450e70bbea3012fe0986fb81661a10a986e8f1aebbf9d23","impliedFormat":99},{"version":"1934ef1a63c856f682335f2fae1b159d0032ece4dbe34ac51dff47f7923b5e4b","signature":"10f01c7cf50eb7b6f40c284a3784b1d64a5179ffadc8e41cfd0287714367d59e","impliedFormat":99},{"version":"04c6bb78ee4d6f37f14994db6f61605f17f14be87d09a1510f252e392a88201b","signature":"e29616aa8641055d75b3f46bf46a457dcb55a4f57d652c804c6dd4550c3831ea","impliedFormat":99},{"version":"1fcb8b15db812281d69a3090d488903f9e93033004aef9d8889ca3ad0753a96f","impliedFormat":1},{"version":"bdf5a95eb0a2dd1d39805bdf51b46ba012bb9b92b2ddaae16219595bba7678a5","impliedFormat":1},{"version":"9f794a0e8550a03baff865a3961cc22afbd85bc4ba9672bdda036971928f85f4","impliedFormat":1},{"version":"66a697d1e4cdbf25cdce4644a8085a8563041fa8c7731d4d9f5e8f22e66ba72c","impliedFormat":1},{"version":"a0c8e17f4d1ea2704c62d7349bc3b8d9a12e3761b5960cb44144d3f0333b3fcb","impliedFormat":1},{"version":"3471c0df3d0391e1dffe6e8bf150294531b2b71a2afa5f2b86e52bf84a5db60a","impliedFormat":1},{"version":"5d4df4de055eddf3187094f938a640f8d96e4c551a47d6686596fdb6ba4c3014","impliedFormat":1},{"version":"8bc2cad630da1033c1fd8d7df2bffb18af0da6113bd086a8bbec04a2471a1e00","impliedFormat":1},{"version":"a1059d1bbc8ad46bfe668b8450e7e8002887c4ab987bdb96d6108d8023f8bb8f","impliedFormat":1},{"version":"5134885e9648e2c6745f8aa1c3e7f5ab3b3617258b3d81ca02de6655ede3d74e","impliedFormat":1},{"version":"4f1ae3f24125216cf07c5211a3f00d2bb4782d7cc76c0681603f8249f9232ff0","impliedFormat":1},{"version":"d3fb92a5640f83f7844d60b35317a0f95c27e3658a749d76d218c461ad091668","impliedFormat":1},{"version":"d1f8bfcd91b284657ef8187c55ace7db91a3c43e642c3f14e54364154932f7e4","impliedFormat":1},{"version":"f54c92bfcae54f360fe79514746efce4870e4ddabc064e95d406bba291e9f672","impliedFormat":1},{"version":"175fd7186fa6a70f9db9b270a04a503cae23cf01cb77e3905bac115c38424cf7","impliedFormat":1},{"version":"c993f7ed1b8e1023c1f2ee5b262dbc3b70b27475674e40a53a58591f9972dacc","impliedFormat":1},{"version":"c914014ab7c7001178663f29d31a495398234a41219af61f26d7e8e91b46af96","impliedFormat":1},{"version":"b135893253d5e507232d1d0b8639dbc00c2bac453fc0420a9af738f1792f8b29","impliedFormat":1},{"version":"267eb41d7d34151d8b5fdf8b73ddefe0684d7921f4b7db14101f600ea3e8ed02","impliedFormat":1},{"version":"eb848e4da1fa7568c893e0a0e1f221572c56768dedfe21d2f7741d383c381552","impliedFormat":1},{"version":"bd6b7d9ff1992fbde49e974f6bf4e8c35922042fc0b6f5326e61fa17a912ffe6","impliedFormat":1},{"version":"ac443b1f93babbfadff3aef4490044012ff461ba1cf1c7d90ac45f5a26863358","impliedFormat":1},{"version":"42e4cdd55aa23586b9aff929e2c216150276a37d30c2cf7c0f32ba917722b5e0","impliedFormat":1},{"version":"4a1ed19ead46b1dd5a319d533fb92162b4ef052ab1c690889cb2eaee293441a1","impliedFormat":1},{"version":"d0d5b967e5c36354b2f13b4bfb78aae4c1685efa9df3fd946d2e576d370e9302","impliedFormat":1},{"version":"8076164b388640f7856b25e945a2ded7738e0f8674ac50c256734067b0f0b1b9","impliedFormat":1},{"version":"36819a1e04a8dbed754a5b3ba2fd5aca2eafb95977eaad6356d77df596c732f4","impliedFormat":1},{"version":"5fe9c19f085365b73956e27becc5167ad25c5fb024bed4728884966a0faab3f3","impliedFormat":1},{"version":"d67961ebada9a5e5c393d9c46a4155877a9f7a48b02a0afc6bbe4e87061e46f5","impliedFormat":1},{"version":"d5e88cd4816669da170c646844042bc83f4523275f85060cf3e2b5b3bf902ee0","impliedFormat":1},{"version":"137ee20e77a23986e9a1fdf6397b555e6d3073bdcca15927c40671d1ac564aac","impliedFormat":1},{"version":"a28b00d18def7993bc502f19be6abdb89db2548fe946a51f0771b8ed26a6786c","impliedFormat":1},{"version":"0fc6ddce4aabc8d84a6aa6644e1012a1474ba844ed6bddc7bea7115583e8a72e","impliedFormat":1},{"version":"0cba3a5d7b81356222594442753cf90dd2892e5ccfe1d262aaca6896ba6c1380","impliedFormat":1},{"version":"a69c09dbea52352f479d3e7ac949fde3d17b195abe90b045d619f747b38d6d1a","impliedFormat":1},{"version":"77f0b5c6a193a699c9f7d7fb0578e64e562d271afa740783665d2a827104a873","affectsGlobalScope":true,"impliedFormat":1},{"version":"e5979905796fe2740d85fbaf4f11f42b7ee1851421afe750823220813421b1af","impliedFormat":1},{"version":"fcdcb42da18dd98dc286b1876dd425791772036012ae61263c011a76b13a190f","affectsGlobalScope":true,"impliedFormat":1},{"version":"1dab5ab6bcf11de47ab9db295df8c4f1d92ffa750e8f095e88c71ce4c3299628","impliedFormat":1},{"version":"f71f46ccd5a90566f0a37b25b23bc4684381ab2180bdf6733f4e6624474e1894","impliedFormat":1},{"version":"54e65985a3ee3cec182e6a555e20974ea936fc8b8d1738c14e8ed8a42bd921d4","affectsGlobalScope":true,"impliedFormat":1},{"version":"82408ed3e959ddc60d3e9904481b5a8dc16469928257af22a3f7d1a3bc7fd8c4","impliedFormat":1},{"version":"5b30f550565fd0a7524282c81c27fe8534099e2cd26170ca80852308f07ae68d","impliedFormat":1},{"version":"34e5de87d983bc6aefef8b17658556e3157003e8d9555d3cb098c6bef0b5fbc8","impliedFormat":1},{"version":"d97cd8a4a42f557fc62271369ed0461c8e50d47b7f9c8ad0b5462f53306f6060","impliedFormat":1},{"version":"f27371653aded82b2b160f7a7033fb4a5b1534b6f6081ef7be1468f0f15327d3","impliedFormat":1},{"version":"c762cd6754b13a461c54b59d0ae0ab7aeef3c292c6cf889873f786ee4d8e75c9","impliedFormat":1},{"version":"f4ea7d5df644785bd9fbf419930cbaec118f0d8b4160037d2339b8e23c059e79","impliedFormat":1},{"version":"bfea28e6162ed21a0aeed181b623dcf250aa79abf49e24a6b7e012655af36d81","affectsGlobalScope":true,"impliedFormat":1},{"version":"b8aca9d0c81abb02bec9b7621983ae65bde71da6727580070602bd2500a9ce2a","impliedFormat":1},{"version":"ae97e20f2e10dbeec193d6a2f9cd9a367a1e293e7d6b33b68bacea166afd7792","impliedFormat":1},{"version":"10d4796a130577d57003a77b95d8723530bbec84718e364aa2129fa8ffba0378","impliedFormat":1},{"version":"063f53ff674228c190efa19dd9448bcbd540acdbb48a928f4cf3a1b9f9478e43","impliedFormat":1},{"version":"bf73c576885408d4a176f44a9035d798827cc5020d58284cb18d7573430d9022","impliedFormat":1},{"version":"7ae078ca42a670445ae0c6a97c029cb83d143d62abd1730efb33f68f0b2c0e82","impliedFormat":1},{"version":"e8b18c6385ff784228a6f369694fcf1a6b475355ba89090a88de13587a9391d5","affectsGlobalScope":true,"impliedFormat":1},{"version":"287b21dc1d1b9701c92e15e7dd673dfe6044b15812956377adffb6f08825b1bc","impliedFormat":1},{"version":"12eea70b5e11e924bb0543aea5eadc16ced318aa26001b453b0d561c2fd0bd1e","impliedFormat":1},{"version":"08777cd9318d294646b121838574e1dd7acbb22c21a03df84e1f2c87b1ad47f2","impliedFormat":1},{"version":"08a90bcdc717df3d50a2ce178d966a8c353fd23e5c392fd3594a6e39d9bb6304","impliedFormat":1},{"version":"4cd4cff679c9b3d9239fd7bf70293ca4594583767526916af8e5d5a47d0219c7","affectsGlobalScope":true,"impliedFormat":1},{"version":"2a12d2da5ac4c4979401a3f6eaafa874747a37c365e4bc18aa2b171ae134d21b","impliedFormat":1},{"version":"002b837927b53f3714308ecd96f72ee8a053b8aeb28213d8ec6de23ed1608b66","impliedFormat":1},{"version":"1dc9c847473bb47279e398b22c740c83ea37a5c88bf66629666e3cf4c5b9f99c","impliedFormat":1},{"version":"a9e4a5a24bf2c44de4c98274975a1a705a0abbaad04df3557c2d3cd8b1727949","impliedFormat":1},{"version":"00fa7ce8bc8acc560dc341bbfdf37840a8c59e6a67c9bfa3fa5f36254df35db2","impliedFormat":1},{"version":"1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff","impliedFormat":1},{"version":"806ef4cac3b3d9fa4a48d849c8e084d7c72fcd7b16d76e06049a9ed742ff79c0","affectsGlobalScope":true,"impliedFormat":1},{"version":"44b8b584a338b190a59f4f6929d072431950c7bd92ec2694821c11bce180c8a5","impliedFormat":1},{"version":"5f0ed51db151c2cdc4fa3bb0f44ce6066912ad001b607a34e65a96c52eb76248","impliedFormat":1},{"version":"af9771b066ec35ffa1c7db391b018d2469d55e51b98ae95e62b6cbef1b0169ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"664d8f2d59164f2e08c543981453893bc7e003e4dfd29651ce09db13e9457980","impliedFormat":1},{"version":"103d70bfbeb3cd3a3f26d1705bf986322d8738c2c143f38ebb743b1e228d7444","impliedFormat":1},{"version":"f52fbf64c7e480271a9096763c4882d356b05cab05bf56a64e68a95313cd2ce2","impliedFormat":1},{"version":"59bdb65f28d7ce52ccfc906e9aaf422f8b8534b2d21c32a27d7819be5ad81df7","impliedFormat":1},{"version":"3a2da34079a2567161c1359316a32e712404b56566c45332ac9dcee015ecce9f","affectsGlobalScope":true,"impliedFormat":1},{"version":"28a2e7383fd898c386ffdcacedf0ec0845e5d1a86b5a43f25b86bc315f556b79","impliedFormat":1},{"version":"3aff9c8c36192e46a84afe7b926136d520487155154ab9ba982a8b544ea8fc95","impliedFormat":1},{"version":"a880cf8d85af2e4189c709b0fea613741649c0e40fffb4360ec70762563d5de0","impliedFormat":1},{"version":"85bbf436a15bbeda4db888be3062d47f99c66fd05d7c50f0f6473a9151b6a070","impliedFormat":1},{"version":"9f9c49c95ecd25e0cb2587751925976cf64fd184714cb11e213749c80cf0f927","impliedFormat":1},{"version":"f0c75c08a71f9212c93a719a25fb0320d53f2e50ca89a812640e08f8ad8c408c","impliedFormat":1},{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true,"impliedFormat":1},{"version":"9cafe917bf667f1027b2bb62e2de454ecd2119c80873ad76fc41d941089753b8","impliedFormat":1},{"version":"277afd6ab6ec72889e2988e0ddd7d138c1f512e68a1fa4e90eedfd71e2097a51","impliedFormat":1},{"version":"c0908f85f2b645d375127a3b53a17a65f782e17962d5c1eb68f08b1188acbf15","impliedFormat":1},{"version":"3fadac5d409cc2f27b1d2f4e7568600f02840205f301c9ae7a3068b46476438b","impliedFormat":1},{"version":"da6aae64ad559286830fd44c81e3d33303348f184af7db4fde8dd99ae9749407","impliedFormat":1},{"version":"3633f87c97d359cb55fa7bf0668fb2be8a23342951af6ec2d06e6d0cf7409371","impliedFormat":1},{"version":"cc3a5427d44fc77ff25e80b3edee4650a51f83de761faf5e633994ecf1ab1b44","impliedFormat":1},{"version":"b350eda75c6e47299b36002b31d5b220c405c21c365e708989829db013fadbb4","impliedFormat":1},{"version":"f421882756b6714834ae4687ab1aeadf344a1cc45437d2edffbac020ff3801c1","impliedFormat":1},{"version":"1d61d6ad832dabafbf63b86c5a79d704f2c8763ada9318e135b17a3cb2d09b32","impliedFormat":1},{"version":"e5cef5de3e5ad3436d414d20743231e284733b9cf4375dc79eff4fcca4282f99","impliedFormat":1},{"version":"e624419ba84e33e661e89a28083119ca41f6953dba09a4f82b660684087afe6d","impliedFormat":1},{"version":"942be430bd0feaced2e3e598273b17e50ea565ec9dac840b580b0b99e1a3cd5c","impliedFormat":1},{"version":"73350006cec5a0c6b71d53b0b0ddbfb82be96752a9c4e3c904c59e633bc9485e","impliedFormat":1},{"version":"a7df5c2e9594966c7e0d4a763b13ed5727506d892669df5f7bc9826f539c1d35","impliedFormat":1},{"version":"258cc5cd6891f6bcbaccefd953997038844e7f65d582cac987ffabf7181bcd4c","impliedFormat":1},{"version":"00a6db28fc4df6ddf10adbe630d9df620ec13af19039c1869653e60dafa739d2","impliedFormat":1},{"version":"649324d5abb5464aabe35d86cd0eef16562df811f0971481cee664afa5acbc88","impliedFormat":1},{"version":"f02da9dd36d7a9aa33c9b2e37ef1f54b0d9ad6a713bae372ae4b72890e40c168","impliedFormat":1},{"version":"3a5652c44d7b3ee47b1d294b1893b30253d8fb6a1ecaafaf5fdef5fdc118f54c","impliedFormat":1},{"version":"4fba134e9015779329678ff1fd1afc32bbbf391b1f419f7622a3ecde7bbfc355","impliedFormat":1},{"version":"af75984f58aa9205be02b0a2248d05f6105a8d4bf8be0baca294b5ceaa10e33e","impliedFormat":1},{"version":"45a910666b455daf042c0a0cfa610c20ea59a0aaf702f93d3b467a05f9a27e20","impliedFormat":1},{"version":"5580ff53b5f6f1ecdb68ecb61327e63112f97660912c15444c1f8a08f69c19dc","impliedFormat":1},{"version":"84fb7c52fc116ddcbd1b34535e387053f2a0134d11c5e39b193f4c1328fb1fb5","impliedFormat":1},{"version":"fd3cd8bf3c90ef4694195a617a5daaac561d8be52ba33c607f170c11f3c50154","impliedFormat":1},{"version":"6852fc2f309e330e38694bad95bde670c384d1498bf4fbe3a751761b43279934","impliedFormat":1},{"version":"9f963b28320dd50221cd23f23059bc23cc7799c7025b44942da68974f90c2e6c","impliedFormat":1},{"version":"c17329bcf495af58e3010f8e61af51709aaa24a6664d8557a7d01a82b5397c59","impliedFormat":1},{"version":"4eebb617b12f21864e6641d0a9eefaca77a9ccf93f00bb7d50b26d8073866e53","impliedFormat":1},{"version":"ca0b43e2565d78809383e9a025b0638a5e65bcde4a2b68ff2c6fa5013642db46","impliedFormat":1},{"version":"1d0a0e5c6471d81467c3fecfa4db4e93ee87d364b776feb83b18d773ad9496d5","impliedFormat":1},{"version":"ef6eddcbf08e7ae71cd9ba8da47e9a3cfc7db36650af48f1b440a5ed50eeee7a","impliedFormat":1},{"version":"e14ee3cb4b764895f2ff2fed229df10b59df8a761c79d8e91d868793322b8896","impliedFormat":1},{"version":"7e36003872035a49bc3a5f21351c37d0e418f60d994ecc470a9463b33b4a7c12","impliedFormat":1},{"version":"b862345e219e6a4d829f7b7cf6d2d6e91e6fa00c29a7c6c86a3f68c77c25de39","impliedFormat":1},{"version":"5b919d9204446816876000e03f033458527bde5e3637783b2bc2e7e9ef7ce897","impliedFormat":1},{"version":"213984ba990f03127a98c3f022d5ca0f0d42df64d4dca199f7319448ce6f3021","impliedFormat":1},{"version":"020ab2020569964d12e40c68ceae39f40f6c0bee9d502a180f039fcb59c2e34d","impliedFormat":1},{"version":"aa50dc8a102c76282915e78944293a777866efe6d220a28884ac4a42d7f4c4e2","impliedFormat":1},{"version":"2b88f02598c9de626b35fbe3ffb1ef33ad9fd175e36e06ba27dc79e444796f6c","impliedFormat":1},{"version":"b728dc56eb9b0d27b4044e076c155f3cd3a121a4a9939afe829cfc0d680d423b","impliedFormat":1},{"version":"324b7298f76ce938cd28d2698a0767ca3c740bc843fd9104e171be8eca839555","impliedFormat":1},{"version":"76aa33edb0042dd572d64e4bda231374390d250d29eeab7e7f27010e8f826006","impliedFormat":1},{"version":"03b6d387edf18a9ee8126e705edff759f65d9c602e11b649e13a5261fe6951a4","impliedFormat":1},{"version":"bd417d58253e07264fbeacda216296af3274af2a2fcd335829598d3b04166e09","signature":"a2e0aca3a13a3a6e787129bb908cfe040bd64a3d546be3ce734ee0344627a62e","impliedFormat":99},{"version":"91c8c41a4feaa6a31b29f4eb9205fdfa23160c9d8c1e49ff64e6643742d93eeb","signature":"e5ad3c788895a6d5ac5d3a181550c55b7ebb11e205729b86776f2634a97f2c7c","impliedFormat":99},{"version":"20327dd4c79a7bd480eb5ad1066653b1e5121c2f9f01d16d48234f38ea0d9cff","signature":"8afd9ec057c333d8d9f99987d75ab12720373be824d9b2357333dfee63bfc108","impliedFormat":99},{"version":"cb732dfea79ca2a9a5fd4ed240df67d6c47fd5b66fe188c645367efd1762ed24","signature":"39257e47f71a52d198342c47d3a6b35338a3c8618e4335b56530f2cb3b0dc511","impliedFormat":99},{"version":"3f6d6465811321abc30a1e5f667feed63e5b3917b3d6c8d6645daf96c75f97ba","affectsGlobalScope":true,"impliedFormat":1}],"options":{"alwaysStrict":true,"declaration":true,"esModuleInterop":true,"module":6,"noFallthroughCasesInSwitch":true,"noImplicitAny":true,"noImplicitReturns":true,"noImplicitThis":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./","rootDir":"../src","skipLibCheck":true,"sourceMap":true,"strict":true,"strictFunctionTypes":true,"strictNullChecks":true,"strictPropertyInitialization":true,"target":7,"tsBuildInfoFile":"./.tsbuildinfo"},"fileIdsList":[[288],[175,288],[175,176,177,178,288],[175,179,180,181,288],[212,216,217,288],[212,215,288],[215,288],[216,218,220,288],[212,215,216,217,218,219,288],[212,215,219,223,224,225,288],[212,215,219,226,288],[212,288],[288,314],[212,213,288],[213,214,288],[240,241,242,243,288],[212,215,221,224,226,227,288],[288,317,318,319,320],[227,288],[212,227,232,288],[212,219,227,288],[212,227,235,236,237,288],[212,219,227,233,288],[222,288],[223,225,288,296,299,300],[223,225,288,300],[215,219,223,224,226,288,295,296],[223,288,300],[223,226,288,297],[215,224,226,288],[223,226,288,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311],[223,288,298],[288,295,298],[212,219,223,224,225,226,227,288,297],[223,225,288,296,298],[223,288,297,298],[288,327,328],[288,323,324],[212,288,323],[288,331,332,333],[212,226,227,232,233,234,238,288],[230,231,288],[229,288],[230,288],[127,288],[137,288],[129,288],[126,128,130,138,139,140,141,288],[55,125,288],[51,54,288],[48,59,288],[48,51,54,58,61,288],[48,51,55,58,59,60,288],[47,52,58,288],[47,48,52,58,84,288],[44,48,288],[48,51,52,54,57,58,61,69,70,81,85,107,110,112,116,288],[61,288],[52,54,288],[43,47,288],[48,51,288],[48,52,58,288],[48,51,52,54,56,288],[48,54,55,61,111,288],[48,55,288],[48,61,288],[58,59,61,288],[51,54,58,59,61,62,288],[51,288],[49,50,288],[164,288],[187,189,190,191,192,193,194,195,196,197,198,199,288],[187,188,190,191,192,193,194,195,196,197,198,199,288],[188,189,190,191,192,193,194,195,196,197,198,199,288],[187,188,189,191,192,193,194,195,196,197,198,199,288],[187,188,189,190,192,193,194,195,196,197,198,199,288],[187,188,189,190,191,193,194,195,196,197,198,199,288],[187,188,189,190,191,192,194,195,196,197,198,199,288],[187,188,189,190,191,192,193,195,196,197,198,199,288],[187,188,189,190,191,192,193,194,196,197,198,199,288],[187,188,189,190,191,192,193,194,195,197,198,199,288],[187,188,189,190,191,192,193,194,195,196,198,199,288],[187,188,189,190,191,192,193,194,195,196,197,199,288],[187,188,189,190,191,192,193,194,195,196,197,198,288],[245,288],[248,288],[249,254,288],[250,260,261,268,277,287,288],[250,251,260,268,288],[252,288],[253,254,261,269,288],[254,277,284,288],[255,257,260,268,288],[256,288],[257,258,288],[259,260,288],[260,288],[260,261,262,277,287,288],[260,261,262,277,288],[288,292],[263,268,277,287,288],[260,261,263,264,268,277,284,287,288],[263,265,277,284,287,288],[245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294],[260,266,288],[267,287,288],[257,260,268,277,288],[269,288],[270,288],[248,271,288],[272,286,288,292],[273,288],[274,288],[260,275,288],[275,276,288,290],[260,277,278,279,288],[277,279,288],[277,278,288],[280,288],[281,288],[260,282,283,288],[282,283,288],[254,268,277,284,288],[285,288],[268,286,288],[249,263,274,287,288],[254,288],[277,288,289],[288,290],[288,291],[249,254,260,262,271,277,287,288,290,292],[277,288,293],[200,288],[48,51,52,288],[152,154,288],[53,151,152,153,154,155,156,157,158,159,160,161,162,288],[152,156,288],[151,288],[48,53,57,82,152,288],[48,57,150,151,288],[151,152,153,288],[154,156,288],[151,152,288],[48,51,61,117,152,155,157,159,160,288],[184,203,288],[184,288],[184,185,288],[212,215,224,227,228,229,232,239,244,288,312,336,337],[288,338],[212,219,221,224,225,229,233,234,238,239,288,313,315,316,321,322,325,326,329,330,334,335],[48,54,63,65,71,288],[48,57,63,69,81,82,107,288],[48,57,63,68,69,70,71,81,82,85,106,107,110,112,288],[48,54,57,58,63,65,68,69,70,82,148,288],[54,288],[48,58,68,69,81,82,288],[48,57,58,65,68,69,71,80,81,82,288],[55,79,288],[48,52,57,58,62,63,68,70,72,83,84,85,106,107,108,109,110,112,113,114,115,117,143,145,146,147,149,288],[143,288],[48,106,118,142,288],[48,63,69,71,144,288],[48,52,57,58,69,110,288],[48,58,69,81,82,288],[54,58,63,65,68,69,70,71,288],[48,51,55,58,59,67,288],[64,288],[65,288],[86,105,288],[104,288],[79,288],[73,288],[73,79,288],[55,73,288],[73,74,75,76,77,78,288],[46,47,288],[46,288],[45,288],[43,288],[43,133,288],[47,132,133,134,135,136,288],[43,44,45,46,131,288],[43,44,45,288],[125,288],[119,288],[119,125,288],[55,119,288],[119,120,121,122,123,124,288],[103,288],[98,102,288],[87,288],[98,99,100,101,288],[89,90,288],[89,288],[91,288],[92,288],[88,288],[88,94,288],[90,93,94,95,96,97,288],[87,88,89,91,92,288],[87,88,91,288],[163,165,171,172,288],[165,288],[171,173,174,211,288,340,341],[176,178,182,186,202,204,205,288],[210,288],[42,171,182,183,186,199,201,205,206,209,288],[207,208,288],[163,166,167,171,288],[42,163,167,168,169,170,288],[171,174,288,339,340],[163,171,172],[171,173,174,211,340,341],[182,205],[210],[171,182,205],[163,171],[163,170],[171,339]],"referencedMap":[[144,1],[177,2],[178,2],[180,2],[179,3],[182,4],[176,2],[202,1],[181,2],[175,1],[218,5],[217,6],[216,7],[221,8],[220,9],[226,10],[227,11],[313,6],[314,12],[315,13],[316,12],[213,12],[214,14],[215,15],[212,1],[240,1],[241,7],[242,1],[244,16],[243,1],[228,17],[317,1],[321,18],[319,12],[318,1],[320,19],[233,20],[235,21],[238,22],[236,1],[237,23],[322,12],[229,1],[223,24],[222,1],[219,1],[301,25],[302,26],[297,27],[303,28],[304,29],[305,29],[296,30],[312,31],[307,25],[306,32],[308,33],[298,34],[309,28],[310,26],[300,35],[311,32],[299,36],[329,37],[327,1],[328,1],[330,12],[325,38],[324,39],[323,1],[234,12],[326,1],[331,12],[332,1],[334,40],[333,12],[224,6],[335,7],[239,41],[225,1],[232,42],[230,43],[231,44],[129,45],[139,46],[130,47],[142,48],[127,1],[128,45],[126,49],[138,46],[140,46],[71,50],[109,51],[82,52],[61,53],[60,1],[107,54],[85,55],[116,56],[141,1],[117,57],[70,58],[84,59],[48,60],[52,61],[110,62],[57,63],[112,64],[56,65],[81,66],[62,67],[63,68],[54,1],[58,1],[69,1],[50,69],[51,70],[49,69],[165,71],[188,72],[189,73],[187,74],[190,75],[191,76],[192,77],[193,78],[194,79],[195,80],[196,81],[197,82],[198,83],[199,84],[344,1],[164,1],[245,85],[246,85],[248,86],[249,87],[250,88],[251,89],[252,90],[253,91],[254,92],[255,93],[256,94],[257,95],[258,95],[259,96],[260,97],[261,98],[262,99],[247,100],[294,1],[263,101],[264,102],[265,103],[295,104],[266,105],[267,106],[268,107],[269,108],[270,109],[271,110],[272,111],[273,112],[274,113],[275,114],[276,115],[277,116],[279,117],[278,118],[280,119],[281,120],[282,121],[283,122],[284,123],[285,124],[286,125],[287,126],[288,127],[289,128],[290,129],[291,130],[292,131],[293,132],[201,133],[200,1],[162,1],[53,134],[155,135],[163,136],[157,137],[151,1],[153,138],[158,139],[152,140],[154,141],[159,142],[156,143],[160,143],[161,144],[166,1],[168,1],[204,145],[185,1],[203,146],[184,1],[183,1],[186,147],[337,1],[338,148],[339,149],[336,150],[111,1],[59,1],[146,151],[108,152],[115,153],[149,154],[148,155],[114,156],[83,157],[80,158],[150,159],[118,160],[143,161],[145,162],[147,163],[113,164],[72,165],[68,166],[67,1],[66,70],[65,167],[64,168],[106,169],[105,170],[86,1],[73,171],[76,172],[77,173],[74,174],[75,172],[79,175],[78,171],[44,1],[45,176],[136,1],[47,177],[131,178],[133,179],[134,180],[43,1],[137,181],[132,182],[46,183],[135,1],[119,184],[122,185],[123,186],[120,187],[121,185],[125,188],[124,184],[8,1],[10,1],[9,1],[2,1],[11,1],[12,1],[13,1],[14,1],[15,1],[16,1],[17,1],[18,1],[3,1],[4,1],[22,1],[19,1],[20,1],[21,1],[23,1],[24,1],[25,1],[5,1],[26,1],[27,1],[28,1],[29,1],[6,1],[30,1],[31,1],[32,1],[33,1],[7,1],[34,1],[39,1],[40,1],[35,1],[36,1],[37,1],[38,1],[1,1],[41,1],[55,1],[104,189],[103,190],[101,191],[87,1],[102,192],[91,193],[97,1],[90,194],[92,195],[100,196],[99,196],[94,197],[95,198],[88,1],[98,199],[93,200],[89,201],[96,1],[42,1],[173,202],[174,1],[167,203],[342,204],[206,205],[207,1],[211,206],[210,207],[208,1],[209,208],[205,1],[172,209],[169,1],[171,210],[341,211],[340,1],[170,1],[343,1]],"exportedModulesMap":[[144,1],[177,2],[178,2],[180,2],[179,3],[182,4],[176,2],[202,1],[181,2],[175,1],[218,5],[217,6],[216,7],[221,8],[220,9],[226,10],[227,11],[313,6],[314,12],[315,13],[316,12],[213,12],[214,14],[215,15],[212,1],[240,1],[241,7],[242,1],[244,16],[243,1],[228,17],[317,1],[321,18],[319,12],[318,1],[320,19],[233,20],[235,21],[238,22],[236,1],[237,23],[322,12],[229,1],[223,24],[222,1],[219,1],[301,25],[302,26],[297,27],[303,28],[304,29],[305,29],[296,30],[312,31],[307,25],[306,32],[308,33],[298,34],[309,28],[310,26],[300,35],[311,32],[299,36],[329,37],[327,1],[328,1],[330,12],[325,38],[324,39],[323,1],[234,12],[326,1],[331,12],[332,1],[334,40],[333,12],[224,6],[335,7],[239,41],[225,1],[232,42],[230,43],[231,44],[129,45],[139,46],[130,47],[142,48],[127,1],[128,45],[126,49],[138,46],[140,46],[71,50],[109,51],[82,52],[61,53],[60,1],[107,54],[85,55],[116,56],[141,1],[117,57],[70,58],[84,59],[48,60],[52,61],[110,62],[57,63],[112,64],[56,65],[81,66],[62,67],[63,68],[54,1],[58,1],[69,1],[50,69],[51,70],[49,69],[165,71],[188,72],[189,73],[187,74],[190,75],[191,76],[192,77],[193,78],[194,79],[195,80],[196,81],[197,82],[198,83],[199,84],[344,1],[164,1],[245,85],[246,85],[248,86],[249,87],[250,88],[251,89],[252,90],[253,91],[254,92],[255,93],[256,94],[257,95],[258,95],[259,96],[260,97],[261,98],[262,99],[247,100],[294,1],[263,101],[264,102],[265,103],[295,104],[266,105],[267,106],[268,107],[269,108],[270,109],[271,110],[272,111],[273,112],[274,113],[275,114],[276,115],[277,116],[279,117],[278,118],[280,119],[281,120],[282,121],[283,122],[284,123],[285,124],[286,125],[287,126],[288,127],[289,128],[290,129],[291,130],[292,131],[293,132],[201,133],[200,1],[162,1],[53,134],[155,135],[163,136],[157,137],[151,1],[153,138],[158,139],[152,140],[154,141],[159,142],[156,143],[160,143],[161,144],[166,1],[168,1],[204,145],[185,1],[203,146],[184,1],[183,1],[186,147],[337,1],[338,148],[339,149],[336,150],[111,1],[59,1],[146,151],[108,152],[115,153],[149,154],[148,155],[114,156],[83,157],[80,158],[150,159],[118,160],[143,161],[145,162],[147,163],[113,164],[72,165],[68,166],[67,1],[66,70],[65,167],[64,168],[106,169],[105,170],[86,1],[73,171],[76,172],[77,173],[74,174],[75,172],[79,175],[78,171],[44,1],[45,176],[136,1],[47,177],[131,178],[133,179],[134,180],[43,1],[137,181],[132,182],[46,183],[135,1],[119,184],[122,185],[123,186],[120,187],[121,185],[125,188],[124,184],[8,1],[10,1],[9,1],[2,1],[11,1],[12,1],[13,1],[14,1],[15,1],[16,1],[17,1],[18,1],[3,1],[4,1],[22,1],[19,1],[20,1],[21,1],[23,1],[24,1],[25,1],[5,1],[26,1],[27,1],[28,1],[29,1],[6,1],[30,1],[31,1],[32,1],[33,1],[7,1],[34,1],[39,1],[40,1],[35,1],[36,1],[37,1],[38,1],[1,1],[41,1],[55,1],[104,189],[103,190],[101,191],[87,1],[102,192],[91,193],[97,1],[90,194],[92,195],[100,196],[99,196],[94,197],[95,198],[88,1],[98,199],[93,200],[89,201],[96,1],[173,212],[342,213],[206,214],[211,215],[210,216],[172,217],[171,218],[341,219],[170,1]],"semanticDiagnosticsPerFile":[144,177,178,180,179,182,176,202,181,175,218,217,216,221,220,226,227,313,314,315,316,213,214,215,212,240,241,242,244,243,228,317,321,319,318,320,233,235,238,236,237,322,229,223,222,219,301,302,297,303,304,305,296,312,307,306,308,298,309,310,300,311,299,329,327,328,330,325,324,323,234,326,331,332,334,333,224,335,239,225,232,230,231,129,139,130,142,127,128,126,138,140,71,109,82,61,60,107,85,116,141,117,70,84,48,52,110,57,112,56,81,62,63,54,58,69,50,51,49,165,188,189,187,190,191,192,193,194,195,196,197,198,199,344,164,245,246,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,247,294,263,264,265,295,266,267,268,269,270,271,272,273,274,275,276,277,279,278,280,281,282,283,284,285,286,287,288,289,290,291,292,293,201,200,162,53,155,163,157,151,153,158,152,154,159,156,160,161,166,168,204,185,203,184,183,186,337,338,339,336,111,59,146,108,115,149,148,114,83,80,150,118,143,145,147,113,72,68,67,66,65,64,106,105,86,73,76,77,74,75,79,78,44,45,136,47,131,133,134,43,137,132,46,135,119,122,123,120,121,125,124,8,10,9,2,11,12,13,14,15,16,17,18,3,4,22,19,20,21,23,24,25,5,26,27,28,29,6,30,31,32,33,7,34,39,40,35,36,37,38,1,41,55,104,103,101,87,102,91,97,90,92,100,99,94,95,88,98,93,89,96,42,173,174,167,342,206,207,211,210,208,209,205,172,169,171,341,340,170,343]},"version":"4.8.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.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.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.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.esnext.intl.d.ts","../src/byte_utils.ts","../node_modules/multiformats/dist/types/src/hashes/interface.d.ts","../node_modules/multiformats/dist/types/src/bases/interface.d.ts","../node_modules/multiformats/dist/types/src/block/interface.d.ts","../node_modules/multiformats/dist/types/src/link/interface.d.ts","../node_modules/multiformats/dist/types/src/cid.d.ts","../node_modules/@libp2p/interface-peer-id/dist/src/index.d.ts","../node_modules/@multiformats/multiaddr/dist/src/protocols-table.d.ts","../node_modules/@multiformats/multiaddr/dist/src/filter/multiaddr-filter.d.ts","../node_modules/@multiformats/multiaddr/dist/src/index.d.ts","../node_modules/@libp2p/interface-peer-info/dist/src/index.d.ts","../node_modules/@waku/interfaces/dist/enr.d.ts","../node_modules/@libp2p/interfaces/dist/src/events.d.ts","../node_modules/uint8arraylist/dist/src/index.d.ts","../node_modules/@libp2p/interface-record/dist/src/index.d.ts","../node_modules/@libp2p/interface-peer-store/dist/src/index.d.ts","../node_modules/@libp2p/interfaces/dist/src/index.d.ts","../node_modules/it-stream-types/dist/src/index.d.ts","../node_modules/@libp2p/interface-connection/dist/src/status.d.ts","../node_modules/@libp2p/interface-connection/dist/src/index.d.ts","../node_modules/@libp2p/interface-stream-muxer/dist/src/index.d.ts","../node_modules/@libp2p/interface-transport/dist/src/index.d.ts","../node_modules/libp2p/node_modules/@multiformats/multiaddr/dist/src/protocols-table.d.ts","../node_modules/libp2p/node_modules/@multiformats/multiaddr/dist/src/index.d.ts","../node_modules/libp2p/node_modules/@libp2p/interface-connection/node_modules/@multiformats/multiaddr/dist/src/index.d.ts","../node_modules/libp2p/node_modules/@libp2p/interface-connection/dist/src/status.d.ts","../node_modules/libp2p/node_modules/@libp2p/interface-connection/dist/src/index.d.ts","../node_modules/@libp2p/interfaces/dist/src/startable.d.ts","../node_modules/@libp2p/interface-metrics/dist/src/index.d.ts","../node_modules/@libp2p/interface-address-manager/dist/src/index.d.ts","../node_modules/libp2p/dist/src/transport-manager.d.ts","../node_modules/libp2p/node_modules/protons-runtime/dist/src/codec.d.ts","../node_modules/libp2p/node_modules/protons-runtime/dist/src/decode.d.ts","../node_modules/libp2p/node_modules/protons-runtime/dist/src/encode.d.ts","../node_modules/libp2p/node_modules/protons-runtime/dist/src/codecs/enum.d.ts","../node_modules/libp2p/node_modules/protons-runtime/dist/src/codecs/message.d.ts","../node_modules/libp2p/node_modules/protons-runtime/dist/src/utils.d.ts","../node_modules/libp2p/node_modules/protons-runtime/dist/src/index.d.ts","../node_modules/libp2p/dist/src/identify/pb/message.d.ts","../node_modules/@libp2p/interface-registrar/dist/src/index.d.ts","../node_modules/@libp2p/interface-connection-manager/dist/src/index.d.ts","../node_modules/libp2p/dist/src/identify/index.d.ts","../node_modules/@libp2p/interface-peer-discovery/dist/src/index.d.ts","../node_modules/@libp2p/interface-dht/dist/src/index.d.ts","../node_modules/libp2p/node_modules/interface-store/dist/src/index.d.ts","../node_modules/uint8arrays/node_modules/multiformats/dist/types/src/bases/interface.d.ts","../node_modules/uint8arrays/node_modules/multiformats/dist/types/src/hashes/interface.d.ts","../node_modules/uint8arrays/node_modules/multiformats/dist/types/src/link/interface.d.ts","../node_modules/uint8arrays/node_modules/multiformats/dist/types/src/cid.d.ts","../node_modules/uint8arrays/node_modules/multiformats/dist/types/src/block/interface.d.ts","../node_modules/uint8arrays/node_modules/multiformats/dist/types/src/codecs/interface.d.ts","../node_modules/uint8arrays/node_modules/multiformats/dist/types/src/interface.d.ts","../node_modules/uint8arrays/node_modules/multiformats/dist/types/src/hashes/digest.d.ts","../node_modules/uint8arrays/node_modules/multiformats/dist/types/src/hashes/hasher.d.ts","../node_modules/uint8arrays/node_modules/multiformats/dist/types/src/varint.d.ts","../node_modules/uint8arrays/node_modules/multiformats/dist/types/src/bytes.d.ts","../node_modules/uint8arrays/node_modules/multiformats/dist/types/src/index.d.ts","../node_modules/uint8arrays/node_modules/multiformats/dist/types/src/codecs/raw.d.ts","../node_modules/uint8arrays/node_modules/multiformats/dist/types/src/codecs/json.d.ts","../node_modules/uint8arrays/node_modules/multiformats/dist/types/src/bases/base.d.ts","../node_modules/uint8arrays/node_modules/multiformats/dist/types/src/basics.d.ts","../node_modules/uint8arrays/dist/src/util/bases.d.ts","../node_modules/uint8arrays/dist/src/to-string.d.ts","../node_modules/libp2p/node_modules/interface-datastore/dist/src/key.d.ts","../node_modules/libp2p/node_modules/interface-datastore/dist/src/index.d.ts","../node_modules/@libp2p/interface-content-routing/dist/src/index.d.ts","../node_modules/libp2p/dist/src/circuit/index.d.ts","../node_modules/@libp2p/interface-connection-encrypter/dist/src/index.d.ts","../node_modules/@libp2p/interface-peer-routing/dist/src/index.d.ts","../node_modules/it-pushable/dist/src/index.d.ts","../node_modules/@libp2p/interface-pubsub/dist/src/index.d.ts","../node_modules/libp2p/dist/src/ping/index.d.ts","../node_modules/libp2p/dist/src/fetch/index.d.ts","../node_modules/libp2p/dist/src/components.d.ts","../node_modules/@libp2p/interface-keychain/dist/src/index.d.ts","../node_modules/@libp2p/interface-libp2p/dist/src/index.d.ts","../node_modules/libp2p/dist/src/keychain/cms.d.ts","../node_modules/protons-runtime/dist/src/codec.d.ts","../node_modules/protons-runtime/dist/src/decode.d.ts","../node_modules/protons-runtime/dist/src/encode.d.ts","../node_modules/protons-runtime/dist/src/codecs/enum.d.ts","../node_modules/protons-runtime/dist/src/codecs/message.d.ts","../node_modules/protons-runtime/dist/src/utils.d.ts","../node_modules/protons-runtime/dist/src/index.d.ts","../node_modules/@libp2p/crypto/dist/src/keys/keys.d.ts","../node_modules/@libp2p/crypto/dist/src/keys/interface.d.ts","../node_modules/@libp2p/crypto/dist/src/keys/key-stretcher.d.ts","../node_modules/@libp2p/crypto/dist/src/keys/ecdh.d.ts","../node_modules/@libp2p/crypto/dist/src/keys/ephemeral-keys.d.ts","../node_modules/multiformats/dist/types/src/codecs/interface.d.ts","../node_modules/multiformats/dist/types/src/interface.d.ts","../node_modules/multiformats/dist/types/src/hashes/digest.d.ts","../node_modules/multiformats/dist/types/src/hashes/hasher.d.ts","../node_modules/multiformats/dist/types/src/varint.d.ts","../node_modules/multiformats/dist/types/src/bytes.d.ts","../node_modules/multiformats/dist/types/src/index.d.ts","../node_modules/@libp2p/crypto/dist/src/keys/rsa-class.d.ts","../node_modules/@libp2p/crypto/dist/src/keys/ed25519-class.d.ts","../node_modules/@libp2p/crypto/dist/src/keys/secp256k1-class.d.ts","../node_modules/@libp2p/interface-keys/dist/src/index.d.ts","../node_modules/@libp2p/crypto/dist/src/keys/index.d.ts","../node_modules/libp2p/dist/src/keychain/index.d.ts","../node_modules/@achingbrain/nat-port-mapper/dist/src/index.d.ts","../node_modules/libp2p/dist/src/nat-manager.d.ts","../node_modules/libp2p/dist/src/address-manager/index.d.ts","../node_modules/libp2p/dist/src/peer-routing.d.ts","../node_modules/libp2p/dist/src/connection-manager/latency-monitor.d.ts","../node_modules/libp2p/dist/src/connection-manager/index.d.ts","../node_modules/libp2p/dist/src/index.d.ts","../node_modules/@waku/interfaces/dist/message.d.ts","../node_modules/@waku/interfaces/dist/protocols.d.ts","../node_modules/@waku/interfaces/dist/misc.d.ts","../node_modules/@waku/interfaces/dist/receiver.d.ts","../node_modules/@waku/interfaces/dist/filter.d.ts","../node_modules/@waku/interfaces/dist/sender.d.ts","../node_modules/@waku/interfaces/dist/light_push.d.ts","../node_modules/@waku/interfaces/dist/peer_exchange.d.ts","../node_modules/@waku/interfaces/dist/relay.d.ts","../node_modules/@waku/interfaces/dist/store.d.ts","../node_modules/@waku/interfaces/dist/waku.d.ts","../node_modules/@waku/interfaces/dist/connection_manager.d.ts","../node_modules/@waku/interfaces/dist/index.d.ts","../node_modules/@types/ms/index.d.ts","../node_modules/@types/debug/index.d.ts","../node_modules/@waku/utils/dist/bytes/index.d.ts","../src/epoch.ts","../node_modules/@waku/zerokit-rln-wasm/rln_wasm.d.ts","../src/resources/verification_key.js","../src/witness_calculator.d.ts","../src/rln.ts","../src/message.ts","../src/codec.ts","../src/constants.ts","../node_modules/@chainsafe/bls-keystore/lib/types.d.ts","../node_modules/@chainsafe/bls-keystore/lib/kdf.d.ts","../node_modules/@chainsafe/bls-keystore/lib/checksum.d.ts","../node_modules/@chainsafe/bls-keystore/lib/cipher.d.ts","../node_modules/@chainsafe/bls-keystore/lib/functional.d.ts","../node_modules/@chainsafe/bls-keystore/lib/class.d.ts","../node_modules/@chainsafe/bls-keystore/lib/schema-validation.d.ts","../node_modules/@chainsafe/bls-keystore/lib/index.d.ts","../node_modules/ethereum-cryptography/sha256.d.ts","../node_modules/ethereum-cryptography/node_modules/@noble/hashes/utils.d.ts","../node_modules/ethereum-cryptography/node_modules/@noble/hashes/_assert.d.ts","../node_modules/ethereum-cryptography/utils.d.ts","../node_modules/@types/lodash/common/common.d.ts","../node_modules/@types/lodash/common/array.d.ts","../node_modules/@types/lodash/common/collection.d.ts","../node_modules/@types/lodash/common/date.d.ts","../node_modules/@types/lodash/common/function.d.ts","../node_modules/@types/lodash/common/lang.d.ts","../node_modules/@types/lodash/common/math.d.ts","../node_modules/@types/lodash/common/number.d.ts","../node_modules/@types/lodash/common/object.d.ts","../node_modules/@types/lodash/common/seq.d.ts","../node_modules/@types/lodash/common/string.d.ts","../node_modules/@types/lodash/common/util.d.ts","../node_modules/@types/lodash/index.d.ts","../node_modules/@types/uuid/index.d.ts","../node_modules/@types/uuid/index.d.mts","../node_modules/@chainsafe/bls-keystore/lib/password.d.ts","../node_modules/ethereum-cryptography/node_modules/@noble/hashes/sha3.d.ts","../node_modules/ethereum-cryptography/keccak.d.ts","../src/keystore/types.ts","../src/keystore/cipher.ts","../src/keystore/credential_validation_generated.ts","../src/keystore/keystore_validation_generated.ts","../src/keystore/schema_validator.ts","../src/keystore/keystore.ts","../src/keystore/index.ts","../node_modules/@ethersproject/bytes/lib/index.d.ts","../node_modules/@ethersproject/bignumber/lib/bignumber.d.ts","../node_modules/@ethersproject/bignumber/lib/fixednumber.d.ts","../node_modules/@ethersproject/bignumber/lib/index.d.ts","../node_modules/@ethersproject/abi/lib/fragments.d.ts","../node_modules/@ethersproject/abi/lib/coders/abstract-coder.d.ts","../node_modules/@ethersproject/abi/lib/abi-coder.d.ts","../node_modules/@ethersproject/properties/lib/index.d.ts","../node_modules/@ethersproject/abi/lib/interface.d.ts","../node_modules/@ethersproject/abi/lib/index.d.ts","../node_modules/@ethersproject/networks/lib/types.d.ts","../node_modules/@ethersproject/networks/lib/index.d.ts","../node_modules/@ethersproject/transactions/lib/index.d.ts","../node_modules/@ethersproject/web/lib/index.d.ts","../node_modules/@ethersproject/abstract-provider/lib/index.d.ts","../node_modules/@ethersproject/abstract-signer/lib/index.d.ts","../node_modules/@ethersproject/contracts/lib/index.d.ts","../node_modules/@ethersproject/logger/lib/index.d.ts","../node_modules/@ethersproject/wordlists/lib/wordlist.d.ts","../node_modules/@ethersproject/wordlists/lib/wordlists.d.ts","../node_modules/@ethersproject/wordlists/lib/index.d.ts","../node_modules/@ethersproject/hdnode/lib/index.d.ts","../node_modules/@ethersproject/signing-key/lib/index.d.ts","../node_modules/@ethersproject/json-wallets/lib/crowdsale.d.ts","../node_modules/@ethersproject/json-wallets/lib/inspect.d.ts","../node_modules/@ethersproject/json-wallets/lib/keystore.d.ts","../node_modules/@ethersproject/json-wallets/lib/index.d.ts","../node_modules/@ethersproject/wallet/lib/index.d.ts","../node_modules/@ethersproject/constants/lib/addresses.d.ts","../node_modules/@ethersproject/constants/lib/bignumbers.d.ts","../node_modules/@ethersproject/constants/lib/hashes.d.ts","../node_modules/@ethersproject/constants/lib/strings.d.ts","../node_modules/@ethersproject/constants/lib/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/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/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/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/@ethersproject/providers/lib/formatter.d.ts","../node_modules/@ethersproject/providers/lib/base-provider.d.ts","../node_modules/@ethersproject/providers/lib/json-rpc-provider.d.ts","../node_modules/@ethersproject/providers/lib/websocket-provider.d.ts","../node_modules/@ethersproject/providers/lib/url-json-rpc-provider.d.ts","../node_modules/@ethersproject/providers/lib/alchemy-provider.d.ts","../node_modules/@ethersproject/providers/lib/ankr-provider.d.ts","../node_modules/@ethersproject/providers/lib/cloudflare-provider.d.ts","../node_modules/@ethersproject/providers/lib/etherscan-provider.d.ts","../node_modules/@ethersproject/providers/lib/fallback-provider.d.ts","../node_modules/@ethersproject/providers/lib/ipc-provider.d.ts","../node_modules/@ethersproject/providers/lib/infura-provider.d.ts","../node_modules/@ethersproject/providers/lib/json-rpc-batch-provider.d.ts","../node_modules/@ethersproject/providers/lib/nodesmith-provider.d.ts","../node_modules/@ethersproject/providers/lib/pocket-provider.d.ts","../node_modules/@ethersproject/providers/lib/web3-provider.d.ts","../node_modules/@ethersproject/providers/lib/index.d.ts","../node_modules/@ethersproject/address/lib/index.d.ts","../node_modules/@ethersproject/base64/lib/base64.d.ts","../node_modules/@ethersproject/base64/lib/index.d.ts","../node_modules/@ethersproject/basex/lib/index.d.ts","../node_modules/@ethersproject/hash/lib/id.d.ts","../node_modules/@ethersproject/hash/lib/namehash.d.ts","../node_modules/@ethersproject/hash/lib/message.d.ts","../node_modules/@ethersproject/hash/lib/typed-data.d.ts","../node_modules/@ethersproject/hash/lib/index.d.ts","../node_modules/@ethersproject/keccak256/lib/index.d.ts","../node_modules/@ethersproject/sha2/lib/types.d.ts","../node_modules/@ethersproject/sha2/lib/sha2.d.ts","../node_modules/@ethersproject/sha2/lib/index.d.ts","../node_modules/@ethersproject/solidity/lib/index.d.ts","../node_modules/@ethersproject/random/lib/random.d.ts","../node_modules/@ethersproject/random/lib/shuffle.d.ts","../node_modules/@ethersproject/random/lib/index.d.ts","../node_modules/@ethersproject/rlp/lib/index.d.ts","../node_modules/@ethersproject/strings/lib/bytes32.d.ts","../node_modules/@ethersproject/strings/lib/idna.d.ts","../node_modules/@ethersproject/strings/lib/utf8.d.ts","../node_modules/@ethersproject/strings/lib/index.d.ts","../node_modules/@ethersproject/units/lib/index.d.ts","../node_modules/ethers/lib/utils.d.ts","../node_modules/ethers/lib/_version.d.ts","../node_modules/ethers/lib/ethers.d.ts","../node_modules/ethers/lib/index.d.ts","../src/root_tracker.ts","../src/rln_contract.ts","../src/index.ts","../src/witness_calculator.js","../node_modules/@types/mocha/index.d.ts"],"fileInfos":[{"version":"f20c05dbfe50a208301d2a1da37b9931bce0466eb5a1f4fe240971b4ecc82b67","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","impliedFormat":1},{"version":"7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","impliedFormat":1},{"version":"8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","impliedFormat":1},{"version":"5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","impliedFormat":1},{"version":"e6b724280c694a9f588847f754198fb96c43d805f065c3a5b28bbc9594541c84","impliedFormat":1},{"version":"1fc5ab7a764205c68fa10d381b08417795fc73111d6dd16b5b1ed36badb743d9","impliedFormat":1},{"version":"9b087de7268e4efc5f215347a62656663933d63c0b1d7b624913240367b999ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"adb996790133eb33b33aadb9c09f15c2c575e71fb57a62de8bf74dbf59ec7dfb","affectsGlobalScope":true,"impliedFormat":1},{"version":"8cc8c5a3bac513368b0157f3d8b31cfdcfe78b56d3724f30f80ed9715e404af8","affectsGlobalScope":true,"impliedFormat":1},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true,"impliedFormat":1},{"version":"c5c05907c02476e4bde6b7e76a79ffcd948aedd14b6a8f56e4674221b0417398","affectsGlobalScope":true,"impliedFormat":1},{"version":"0d5f52b3174bee6edb81260ebcd792692c32c81fd55499d69531496f3f2b25e7","affectsGlobalScope":true,"impliedFormat":1},{"version":"55f400eec64d17e888e278f4def2f254b41b89515d3b88ad75d5e05f019daddd","affectsGlobalScope":true,"impliedFormat":1},{"version":"181f1784c6c10b751631b24ce60c7f78b20665db4550b335be179217bacc0d5f","affectsGlobalScope":true,"impliedFormat":1},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true,"impliedFormat":1},{"version":"75ec0bdd727d887f1b79ed6619412ea72ba3c81d92d0787ccb64bab18d261f14","affectsGlobalScope":true,"impliedFormat":1},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true,"impliedFormat":1},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true,"impliedFormat":1},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true,"impliedFormat":1},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true,"impliedFormat":1},{"version":"81cac4cbc92c0c839c70f8ffb94eb61e2d32dc1c3cf6d95844ca099463cf37ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true,"impliedFormat":1},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true,"impliedFormat":1},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true,"impliedFormat":1},{"version":"d154ea5bb7f7f9001ed9153e876b2d5b8f5c2bb9ec02b3ae0d239ec769f1f2ae","affectsGlobalScope":true,"impliedFormat":1},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true,"impliedFormat":1},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true,"impliedFormat":1},{"version":"9d57b2b5d15838ed094aa9ff1299eecef40b190722eb619bac4616657a05f951","affectsGlobalScope":true,"impliedFormat":1},{"version":"6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de","affectsGlobalScope":true,"impliedFormat":1},{"version":"6e7997ef61de3132e4d4b2250e75343f487903ddf5370e7ce33cf1b9db9a63ed","affectsGlobalScope":true,"impliedFormat":1},{"version":"2ad234885a4240522efccd77de6c7d99eecf9b4de0914adb9a35c0c22433f993","affectsGlobalScope":true,"impliedFormat":1},{"version":"09aa50414b80c023553090e2f53827f007a301bc34b0495bfb2c3c08ab9ad1eb","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7f680a43f8cd12a6b6122c07c54ba40952b0c8aa140dcfcf32eb9e6cb028596","affectsGlobalScope":true,"impliedFormat":1},{"version":"3787b83e297de7c315d55d4a7c546ae28e5f6c0a361b7a1dcec1f1f50a54ef11","affectsGlobalScope":true,"impliedFormat":1},{"version":"e7e8e1d368290e9295ef18ca23f405cf40d5456fa9f20db6373a61ca45f75f40","affectsGlobalScope":true,"impliedFormat":1},{"version":"faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e","affectsGlobalScope":true,"impliedFormat":1},{"version":"06393d13ea207a1bfe08ec8d7be562549c5e2da8983f2ee074e00002629d1871","affectsGlobalScope":true,"impliedFormat":1},{"version":"775d9c9fd150d5de79e0450f35bc8b8f94ae64e3eb5da12725ff2a649dccc777","affectsGlobalScope":true,"impliedFormat":1},{"version":"b248e32ca52e8f5571390a4142558ae4f203ae2f94d5bac38a3084d529ef4e58","affectsGlobalScope":true,"impliedFormat":1},{"version":"52d1bb7ab7a3306fd0375c8bff560feed26ed676a5b0457fa8027b563aecb9a4","affectsGlobalScope":true,"impliedFormat":1},{"version":"ff77107ca6bf9d21ba1eb7eeefff1a0b951ebc57c04b171c1956360ba630eef0","signature":"60fd8e1d8095e876caeb2704b71d332cbda552ecdfc1f36919256a463e4d2567","impliedFormat":99},{"version":"65da6f0b8f50b27e05ebf35c88a8757eb4308751cdf2b1064a0e310a2a485895","impliedFormat":99},{"version":"2e3dc1d28f2467b2af0c931a3b0d2c595746a2f21818fc3c7b5d050996ace788","impliedFormat":99},{"version":"237be372eeb9a7ce07c6b2a21358f22772cde924614d67de175a4ac0ba3eb486","impliedFormat":99},{"version":"862eacc247d6c92524d7879feac6da363f55428cc78270bce7b14f2d3d0b0cef","impliedFormat":99},{"version":"f55f3ab9485b5fd1a3ba3a5a53e680cb8d3acc3552816a5d58a1fa26324262d0","impliedFormat":99},{"version":"ee93f3313289b31afd1544da65086607942df227eb61aedf488b7c072aa1128f","impliedFormat":99},{"version":"5d055d8b54e2dec3fe4aa417f5f664658b78123e83e8735047285f99a1d24065","impliedFormat":99},{"version":"42b5333564fef3c9becbe8daf55b1ea124514cd86c2f8bed401d2a3f0037b3b1","impliedFormat":99},{"version":"109970171acb66c4c03fa6ba9d0a3bc2bf43c12540db2b0842d25d54fbe11f65","impliedFormat":99},{"version":"edb50eace77052203c3bc6eb251fe31f44ab0107e2b6d949ec983a918726aaf4","impliedFormat":99},{"version":"a5419b108da7e4c0241d74ab53bf2041c62e77815965d24605c2407415f11c5d","impliedFormat":99},{"version":"4a5612eb59f581a5b8e05d22e668b4199787751266a0291e3e07113fc52abf2a","impliedFormat":99},{"version":"ea86fe238f679714f2b3662d9d932bc3b47a0500894985718243167043f2bda8","impliedFormat":99},{"version":"866f0c4f16380a56653adc6cbeac08c58c626dabb431f0fa6cc2ba07874836d8","impliedFormat":99},{"version":"e8c5b68c1182684e8cfc177430b80fef003976d1dbde326087c28f5125fe4b5d","impliedFormat":99},{"version":"a807c0a82557d68f6f0464d6af0a6566d1ef708f57c7d1d7dd8dde28879635bc","impliedFormat":99},{"version":"a2023e18c62b1109f17241fb1f90a84e75fffcb3ee9265d2e9bc0fa40b6ede42","impliedFormat":99},{"version":"6666d48a46dbfd565490e7f8789093e2392c5bdcc3a380dfdd91c77237e43101","impliedFormat":99},{"version":"3ccf65e2230413ab1facbad92a2fb77b8e2bcd314618d0ebc12f6cb7aaa21619","impliedFormat":99},{"version":"4c5e54a2d502770a63859a00fbf77e8b91ce76b18080278f62866e7cdb582798","impliedFormat":99},{"version":"71dfda7df8d05d2d54627963af1c3c675ef99363d421b7ff42ae237d038db4ce","impliedFormat":99},{"version":"5d055d8b54e2dec3fe4aa417f5f664658b78123e83e8735047285f99a1d24065","impliedFormat":99},{"version":"1b03f8d19b753269d85e2e50ec2a2866bf349fb4f6e72aef6559e94c64511dee","impliedFormat":99},{"version":"109970171acb66c4c03fa6ba9d0a3bc2bf43c12540db2b0842d25d54fbe11f65","impliedFormat":99},{"version":"6666d48a46dbfd565490e7f8789093e2392c5bdcc3a380dfdd91c77237e43101","impliedFormat":99},{"version":"6377354dd753557d479933e0bec6ca6836f839c87394ecb071e85f062b708058","impliedFormat":99},{"version":"16c594cd8a44be9f5398d3fc7dbc9575f0b67d91a6553f35bd3576136862b32b","impliedFormat":99},{"version":"0fc1e0effc8ea83ceca9a1ff36c2696489fefea040d33fc5cbe244111333fcd4","impliedFormat":99},{"version":"0dd67171a4a3fa82044faec51befa11ab96f9205fd8cc96be09de275b65d36ab","impliedFormat":99},{"version":"42570779c28480ae0d1fa0695974a888305ee2b2efd37bacdeb57204dec843db","impliedFormat":99},{"version":"20e85d1b2ce7381a938a25a725a90f8610e68862c5a661acfeffaacd6513d392","impliedFormat":99},{"version":"667c9ac7c2f61c4a36220c2fa02f848a170aa96d3a58be32a5831aad86330da2","impliedFormat":99},{"version":"eb15dfd1f8b6da5f546fe29a6a0f0de4ae6dbd4a5577af4eba4c8a54548ef0a2","impliedFormat":99},{"version":"01443e5da049881a99f223c72617d4bb1d8854930d03deceb628e4be83df1e4a","impliedFormat":99},{"version":"76513b0c51c81a929f4f90694edf4dcc85f71bb46121b4192b5530e0601f9d81","impliedFormat":99},{"version":"a0263cc045540023e72c993a26fd1bef3adf8674b9719272009134c56ecfc336","impliedFormat":99},{"version":"df162b6f89985144d8aedccc36dfc366ab5e562ba8615125b2bfa25273f3006b","impliedFormat":99},{"version":"0820608ae5bf3995d77eedf0fa7f987c0d5c7c9592fdc0bcb391fb742d5067a0","impliedFormat":99},{"version":"14b8a1dd226271e6b045d91262602b15820ff871b3dab24510a15e6989d05a5d","impliedFormat":99},{"version":"2596013e7e3f002455e29bad0a70e0ae1a1364cac8584d2590b73133e63d6073","impliedFormat":99},{"version":"274b714a925cc417f249f430b9c5c3ec80986044d8322d41e40fd39a7d154fa8","impliedFormat":99},{"version":"70cbb43b1e838bb77b16e1085115494c8b6925a954edf7fbdd494ad56a88adb8","impliedFormat":99},{"version":"ad716342f559ff88871c01a351dbf89fe72c8313f329cd2a714f09f532c50eab","impliedFormat":99},{"version":"6adc54eb855f3fda2603173a431be81830172099df37ddda11b6730c1c8d9147","impliedFormat":1},{"version":"438ad3eed057c98e23b55ffa592f96269f07242cce80ecb8ed823574de77aab0","impliedFormat":99},{"version":"8eef7568d606bb74f6fa6411b6c067637777f85c00079723a9397120dd92b350","impliedFormat":99},{"version":"2b74d6d9875fc0b0b512b5c6f1f1ca53d050da82909f72b4cc2cdef317695aba","impliedFormat":99},{"version":"2a4905817a3f71d0739ed8bfb7399ec43994c9a11b20ff872b1a958edbad1cba","impliedFormat":99},{"version":"ae330d2797dc8a25dc36f0ade8a4a84c826d6dd4f108af61448327c9e8acac4a","impliedFormat":99},{"version":"fc018e192395d4243f43355c9eec40d33b8e7e7b461d693b84472aba9b099e98","impliedFormat":99},{"version":"e1fe04ff1ffecfb18420f0895d0cd2652f98a27def5c33aae5ef328f186c905b","impliedFormat":99},{"version":"635e7c978a30ab2013a37c4d05d0d081e58e4ad867db46a009412ad24ee426d7","impliedFormat":99},{"version":"9ebc2216a784e7fc97775fb7ab6976c6e2eb88662ff02a1a3c89a10546dac173","impliedFormat":99},{"version":"87b44430497cae7542bbd5ac2fb6663df6a465dea7a46be58a49cd9416530439","impliedFormat":99},{"version":"32b67d761db3999f1e482d0add405b695d3ec5607e07ae4c963a96334c331814","impliedFormat":99},{"version":"4e3ffdea3d82359fb81c9187e3d1f3ca4101963ae5e664ab47484cf61af50ee9","impliedFormat":99},{"version":"474ab86e676e0c1b664bfcd21b1e58bed351f3390ba1d892e8da703f371b7a4e","impliedFormat":99},{"version":"fb7a601066e19b5d0c173b564bd46b358cf00c9040e79fb6fd427b7aa223eed1","impliedFormat":99},{"version":"cf59d474e0bb4c2f3bb3be647b435891c75115f1aa9e2908b28df9dea1604be2","impliedFormat":99},{"version":"1535a7688c7368b2d187873760dd26c14ed28fbc0802e521aae65c30bfbb434e","impliedFormat":99},{"version":"c0fdc1c9e8770da790089cb0d263670cb7a22ff4193b352717936d0dd08fe26b","impliedFormat":99},{"version":"a7975589eea94f2a13153955364398522d9a265aa2a52def61d29f752b48cc91","impliedFormat":99},{"version":"531556008024c69163c0d120823a69e7a6a5be1279ea87fc725a63dc386278b7","impliedFormat":99},{"version":"df99b5b6041e9e37b46c876cd487020e4bc9e02a519fa4a735cbe18f5c4f2f38","impliedFormat":99},{"version":"272cd5e6428b68d973ce707329c3f621ac6b3eb4bf5bd4421b1106299600ddde","impliedFormat":99},{"version":"2202644315d85ab8985d4f72fe136c00e53db91ac06a0646eff7980e55bdacb3","impliedFormat":99},{"version":"cd5ab2f30a27d53001804b7ef51758a79b73e4ccb7716b8e2ab8e17d69a7183b","impliedFormat":99},{"version":"9080b537cd4fa24273477f33faf5f983e5f10aa386c2de8fcb6de837c9cc9763","impliedFormat":99},{"version":"d34a8917095f11006957bed03e1e60dacc0b82906f5d0ddc87b959e283fbb5cc","impliedFormat":99},{"version":"bffe8a5db9410d2f3320df7016f83e9de47328e377aa78b9aaed1fe6d5db9d66","impliedFormat":99},{"version":"a9dc4418352bc4a8d1e9314aba1e29327b17d06c604b397c6140d6488c5b022a","impliedFormat":99},{"version":"6adcf362e079c177ea4730c8b7beb3e9848b3f970ef08b497a641e034b0a0ece","impliedFormat":99},{"version":"114ef8adba09ab579b6bd6d16b2c83ddea02c1f5ff598f3144f2c3853ef3eb7d","impliedFormat":99},{"version":"1217c84b164e559b2371aea1b8c11eea9f95e123dab98942c8a5a4aacc2ad252","impliedFormat":99},{"version":"28092d5b5aea82adc509a3d522d265d9d5a8a0ddf92f94c8fb336c5787893030","impliedFormat":99},{"version":"995a3938e28f1a7e359847f83b43951c05727b6ca42398982778adc8b9a58609","impliedFormat":99},{"version":"77411d10dad0e74a86ce28dd0f720cce2947421e42f3fb5d1849bc14520f9b5b","impliedFormat":99},{"version":"667c9ac7c2f61c4a36220c2fa02f848a170aa96d3a58be32a5831aad86330da2","impliedFormat":99},{"version":"eb15dfd1f8b6da5f546fe29a6a0f0de4ae6dbd4a5577af4eba4c8a54548ef0a2","impliedFormat":99},{"version":"01443e5da049881a99f223c72617d4bb1d8854930d03deceb628e4be83df1e4a","impliedFormat":99},{"version":"a380f922477db0b9b4a17cde7d29585e2280036fd62ac4564814d4844b64717a","impliedFormat":99},{"version":"a0263cc045540023e72c993a26fd1bef3adf8674b9719272009134c56ecfc336","impliedFormat":99},{"version":"df162b6f89985144d8aedccc36dfc366ab5e562ba8615125b2bfa25273f3006b","impliedFormat":99},{"version":"1a57e52e42a8ff2121d47cba8133c73b4e10ede7252881dc131cf514b28f884e","impliedFormat":99},{"version":"cfb5cd87dcce3ac2d6e4e575ae732791e1d77e047c0018bfc5f9e4d1ba355719","impliedFormat":99},{"version":"a979d3d312f1d879a5c77493697380b6caae9333e2fe0f51bb0fb0473dc211ba","impliedFormat":99},{"version":"aaf4673898dca18c059997aae0e8ae725215c8ee0998e9d4a6fd173384276748","impliedFormat":99},{"version":"b90473059128d1a4c028852a710058a3a8944835188672f5846deba05a1e778e","impliedFormat":99},{"version":"8ad13afb5324460426b210f7c5040d3d19375accd24e22bb52a534c728aca73e","impliedFormat":99},{"version":"e1fe04ff1ffecfb18420f0895d0cd2652f98a27def5c33aae5ef328f186c905b","impliedFormat":99},{"version":"635e7c978a30ab2013a37c4d05d0d081e58e4ad867db46a009412ad24ee426d7","impliedFormat":99},{"version":"b27c2a28daf3e502ae6b631cbf51881247fffd3e0163520bc5904604f9e48096","impliedFormat":99},{"version":"87b44430497cae7542bbd5ac2fb6663df6a465dea7a46be58a49cd9416530439","impliedFormat":99},{"version":"32b67d761db3999f1e482d0add405b695d3ec5607e07ae4c963a96334c331814","impliedFormat":99},{"version":"8747571dae434deca4847b49e09b5421d7068b0956a1df841756812645d4e1ed","impliedFormat":99},{"version":"216601fa3da32170d99a6cbdea143a00dfd5a7bfddcf231126493c0ab992daf4","impliedFormat":99},{"version":"06245aedbc73b4f39fabd67ab13f451e009489bd66dac614184c8f97034f8016","impliedFormat":99},{"version":"b3bff8270798e03d00349137271e3f11074ec5281a393289dd8f33f37627828b","impliedFormat":99},{"version":"3b65ca51bc8915ae230bb40cb6a9662bcdcde83c402f57d7f8b8c803d497d0af","impliedFormat":99},{"version":"28393110732dca5855c0fd444777dc978d010ecba3204c4c48cfa26ee612bc13","impliedFormat":99},{"version":"01fd310805f9c29fc38a6580e32f75291d5dd3918e7acdfc7d50548ba0c4bf9b","impliedFormat":99},{"version":"f569da0d6f4c6fb153811dd6b7d34afb4511c7d85f5089e30a1db78004975ec1","impliedFormat":99},{"version":"537b1070107a0454a2fe365a633555700fff55a4b3e15d55520633b93dbf96d1","impliedFormat":99},{"version":"6b616e00e177a11c8054c70c821ca2d0c976403d11ad466385dddc89245e7ade","impliedFormat":99},{"version":"8dac050016c78a797699221c95d569c47ea4176e403b47f9f5a2e95afe26cdd6","impliedFormat":99},{"version":"d8a63ecc9188f8ef5fce8c82ea2c691acce9a152b8bd07d75a6531c7d4c07df9","impliedFormat":99},{"version":"4967ab74e79f8d087627020dd95dd6f803b79a14410acb11b4c8a33db61bdcf3","impliedFormat":99},{"version":"41326ccdc0707b973e3a285711e4d4ff37b999745d1539e346800a8f1db8e702","impliedFormat":99},{"version":"55ceb2bf66892116339189e65e54fb1b22def0d6aec0a64ff0038e69c079b1c7","impliedFormat":99},{"version":"d645480bf6b4bbea9b456d72dc0bf48db82b8218f80134d6d1f0e23123279d13","impliedFormat":99},{"version":"b2f91bd2d0f60e3dca8217d9e405b594c1268f51306bca54b6b6b50d76177a43","impliedFormat":99},{"version":"a6ba587a908313fff2672c8fa74f1f93c3d74861464488c352304f20d4883e27","impliedFormat":99},{"version":"c4b62e88d338895f62ea1c2eecff4dae3ea7d6c5aa08436f89960bebade12be9","impliedFormat":99},{"version":"0c5bc6a0a6664bfcb6d53bec072fe1b83e129ea965143e826b7e3f40b0c8fa96","impliedFormat":99},{"version":"2e1d641e085f3fad3bfaa36a3aa917703f314cd3e52057538554c8f5a1362872","impliedFormat":99},{"version":"94fc6dd8f95aaf163e5cde84558bf45867fccacfb2632c6e85265efda6dbc0a4","impliedFormat":99},{"version":"eb6527640f6cd73d8b1350ed74cf374d5d08a951f78bebbf8f1f0786ad914e41","impliedFormat":99},{"version":"9baaecd1ece45f7966156fcb69f9d366aed3d1e8e604e58042970de681228929","impliedFormat":99},{"version":"15a6ebf6dc00e8474f7ee0e2c6321b7ad328b4b59d03ee7b103c94a71bbd3a7e","impliedFormat":99},{"version":"3e836ec68dd734248c913405f458ed2c66565c4fa4647aa1d0cb8fe5f35e2d66","impliedFormat":99},{"version":"dd4f10fd0eab2df1b95f1da2de90806cdbe5b9c9552596115521d36e2fd9da4f","impliedFormat":99},{"version":"6a9c5127096b35264eb7cd21b2417bfc1d42cceca9ba4ce2bb0c3410b7816042","impliedFormat":1},{"version":"78828b06c0d3b586954015e9ebde5480b009e166c71244763bda328ec0920f41","impliedFormat":1},{"version":"f98f7fd5c208374f072a67a46306ab9b3f914554b4ebb673fb805e13a4119b6c","impliedFormat":99},{"version":"e9318530496429d8c5f5a39ce1f0eaf39ecf0a779a0e2f0f54ab37cd1ec057b6","signature":"b5b1f8f8b94f35a0a1b59e923899562482f6c99b912a0c2fa9424410fdd6f910","impliedFormat":99},{"version":"4a8ba0a75f66d19e6de5e1af20301769e3c2922b9ed766849e4134d32090854b","impliedFormat":1},{"version":"4e5dd895ed64dedb1a4a959ae8236a5f7fb803267a2986498d946b68a5dbde16","signature":"8e87acd8260ebbda136579bdf35e3535475864e40a3fd7ed09f45bd731fa6c3a","impliedFormat":99},{"version":"23c811b86e2e70be10ba78aba44942fb7dea4d7ca01cfbc14524508c5efbdc27","impliedFormat":99},{"version":"eae2bbd6b338083db08aba545813ac3b69b059143b3db4577a488084baa088dd","signature":"1005bd68c0e2012ed116b83235ecef9a8c05d56f905f31fa091dff6819df2879","impliedFormat":99},{"version":"5cc8e8f6ab452f986e30bdeeba5ed3fbc37300ac3a233af794f505ba41694955","signature":"adb0928b920e0cad8efd70e2c47e84ebad4bec9134e3caae137df49f65160450","impliedFormat":99},{"version":"cc704dd72d42219ff6f6dd38c0585364940763337412b253c9a84bd9440e4226","signature":"7ce814a75931a044a619f099254e6dd5df1f1f96ce1442a24c135e5c68696f58","impliedFormat":99},{"version":"e82a11b5c8d2fe6b0e7bf68f7ef0da1007c1ae51b26d5348ae2e65ce9a17d030","signature":"3b41fe134d571bca09a1302d50c6afba4249f6e8b41235b42f47da2c6660eef2","impliedFormat":99},{"version":"5ccd75f0f34649b7e7e02c4c1fc13ca55245ee2b3fd03afe7b33c479528955ba","impliedFormat":1},{"version":"762eb5c667538d6af830a3d05047850acf463528bfbfc8bc2b136075582a64a8","impliedFormat":1},{"version":"a67d4361c72e0da01d7de8f4e8c72789700f3ff4864ef1ccb939703cbd5e4717","impliedFormat":1},{"version":"b2954c77d0660b17248dba85b262bee3af5e1e526d1a0a4fb63c1583db937589","impliedFormat":1},{"version":"dd5d336287e57034dff2b371d0b79dbd257ef8231752955a35d28bdfaba357b5","impliedFormat":1},{"version":"93f13ccf02b981dac3f2c600effece96e433585c8ae54befe9721b5a818538a7","impliedFormat":1},{"version":"0f0b7504b03d06d78c1bb78d2618c3c017a5e35971b0b51c7d53c3fd29054250","impliedFormat":1},{"version":"cdfc24664ebc99ea6ea6357d75dc30b5dd161f18de7e6512786796fad0a592a7","impliedFormat":1},{"version":"f2ee0a1cea636103bf8ba90c36d798d1c39aaf9c2cbfa4800f09279232900661","impliedFormat":1},{"version":"3c3ca314a2b01902ef19b499be6e052925a849f14e2d9185afb323df3d3a72b6","impliedFormat":1},{"version":"d77dd6161e57ca9e7603f50263cfa1e8bec67e54502f730becb152e79f55324e","impliedFormat":1},{"version":"05b392be92f47b0460bb9b3e8566ef966ed3c691f8ec8198310ffba12f4080ee","impliedFormat":1},{"version":"32ab25b7b28b24a138d879ca371b18c8fdfdd564ad5107e1333c5aa5d5fea494","impliedFormat":1},{"version":"458111fc89d11d2151277c822dfdc1a28fa5b6b2493cf942e37d4cd0a6ee5f22","impliedFormat":1},{"version":"da2b6356b84a40111aaecb18304ea4e4fcb43d70efb1c13ca7d7a906445ee0d3","impliedFormat":1},{"version":"187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42","impliedFormat":1},{"version":"febf0b2de54781102b00f61653b21377390a048fbf5262718c91860d11ff34a6","impliedFormat":1},{"version":"6f294731b495c65ecf46a5694f0082954b961cf05463bea823f8014098eaffa0","impliedFormat":1},{"version":"0aaef8cded245bf5036a7a40b65622dd6c4da71f7a35343112edbe112b348a1e","impliedFormat":1},{"version":"00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a","impliedFormat":1},{"version":"dcd91d3b697cb650b95db5471189b99815af5db2a1cd28760f91e0b12ede8ed5","impliedFormat":1},{"version":"3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd","impliedFormat":1},{"version":"b03afe4bec768ae333582915146f48b161e567a81b5ebc31c4d78af089770ac9","impliedFormat":1},{"version":"df996e25faa505f85aeb294d15ebe61b399cf1d1e49959cdfaf2cc0815c203f9","impliedFormat":1},{"version":"30abc554c7ad13063a02ddd06757929b34357aea1f6fcf4ca39114cb0fc19384","impliedFormat":1},{"version":"fab58e600970e66547644a44bc9918e3223aa2cbd9e8763cec004b2cfb48827e","impliedFormat":1},{"version":"27c7c17a5dfd59eedb5a17f17245612eda203b09acd148456a90e12cdbd73769","impliedFormat":99},{"version":"d4c56de1982dffbc7bfea0025093285874f70c259be043a7d1fc281220008418","impliedFormat":1},{"version":"ffc3212863d8ff2caa53d212bdfeee8d19e5528dd3a25337a211692ff6c5e7f5","impliedFormat":1},{"version":"05bb4c3441e49099eea24f828288b34cbccd18d8869039fd5c44832bfefa7408","impliedFormat":1},{"version":"e28b3cfb92dea918065ea34bf185d6365355c2e4c308e190f27e87424a1d133a","signature":"bb3a3a7e5d1abb83649dc4cea1256e898723601884a20851dca5b79b06c370e8","impliedFormat":99},{"version":"3c773b6c03769ce47f10f321bb764b6368f7b42e548ca0921e185efbee24f4af","signature":"3fec22e71eb48a5e3e8fed4d63c21440fa9016ee0eb382db61c3235c4db5281d","impliedFormat":99},{"version":"882dff9c00e22a508777b48688e46fe8c2634e738099f8db4ae0219935184f13","signature":"f18068deda701d47835307f40140659c29aa227073a768c3d8b1814dcbfabda3","impliedFormat":99},{"version":"5c8dba0075f82dbf52309a4cd94a5c4a4f617ee41dbe58ecf29b7676009953b6","signature":"48e23e94b09582adc5aad7072838e17379723f0a7abd4245f873c99b96e4349a","impliedFormat":99},{"version":"8b5dbe118cfa320ca901b6afe1109611fbde78a71d3ae74321da8fb7c3b7044a","signature":"3137f61fb99663553450e70bbea3012fe0986fb81661a10a986e8f1aebbf9d23","impliedFormat":99},{"version":"1934ef1a63c856f682335f2fae1b159d0032ece4dbe34ac51dff47f7923b5e4b","signature":"10f01c7cf50eb7b6f40c284a3784b1d64a5179ffadc8e41cfd0287714367d59e","impliedFormat":99},{"version":"04c6bb78ee4d6f37f14994db6f61605f17f14be87d09a1510f252e392a88201b","signature":"e29616aa8641055d75b3f46bf46a457dcb55a4f57d652c804c6dd4550c3831ea","impliedFormat":99},{"version":"1fcb8b15db812281d69a3090d488903f9e93033004aef9d8889ca3ad0753a96f","impliedFormat":1},{"version":"bdf5a95eb0a2dd1d39805bdf51b46ba012bb9b92b2ddaae16219595bba7678a5","impliedFormat":1},{"version":"9f794a0e8550a03baff865a3961cc22afbd85bc4ba9672bdda036971928f85f4","impliedFormat":1},{"version":"66a697d1e4cdbf25cdce4644a8085a8563041fa8c7731d4d9f5e8f22e66ba72c","impliedFormat":1},{"version":"a0c8e17f4d1ea2704c62d7349bc3b8d9a12e3761b5960cb44144d3f0333b3fcb","impliedFormat":1},{"version":"3471c0df3d0391e1dffe6e8bf150294531b2b71a2afa5f2b86e52bf84a5db60a","impliedFormat":1},{"version":"5d4df4de055eddf3187094f938a640f8d96e4c551a47d6686596fdb6ba4c3014","impliedFormat":1},{"version":"8bc2cad630da1033c1fd8d7df2bffb18af0da6113bd086a8bbec04a2471a1e00","impliedFormat":1},{"version":"a1059d1bbc8ad46bfe668b8450e7e8002887c4ab987bdb96d6108d8023f8bb8f","impliedFormat":1},{"version":"5134885e9648e2c6745f8aa1c3e7f5ab3b3617258b3d81ca02de6655ede3d74e","impliedFormat":1},{"version":"4f1ae3f24125216cf07c5211a3f00d2bb4782d7cc76c0681603f8249f9232ff0","impliedFormat":1},{"version":"d3fb92a5640f83f7844d60b35317a0f95c27e3658a749d76d218c461ad091668","impliedFormat":1},{"version":"d1f8bfcd91b284657ef8187c55ace7db91a3c43e642c3f14e54364154932f7e4","impliedFormat":1},{"version":"f54c92bfcae54f360fe79514746efce4870e4ddabc064e95d406bba291e9f672","impliedFormat":1},{"version":"175fd7186fa6a70f9db9b270a04a503cae23cf01cb77e3905bac115c38424cf7","impliedFormat":1},{"version":"c993f7ed1b8e1023c1f2ee5b262dbc3b70b27475674e40a53a58591f9972dacc","impliedFormat":1},{"version":"c914014ab7c7001178663f29d31a495398234a41219af61f26d7e8e91b46af96","impliedFormat":1},{"version":"b135893253d5e507232d1d0b8639dbc00c2bac453fc0420a9af738f1792f8b29","impliedFormat":1},{"version":"267eb41d7d34151d8b5fdf8b73ddefe0684d7921f4b7db14101f600ea3e8ed02","impliedFormat":1},{"version":"eb848e4da1fa7568c893e0a0e1f221572c56768dedfe21d2f7741d383c381552","impliedFormat":1},{"version":"bd6b7d9ff1992fbde49e974f6bf4e8c35922042fc0b6f5326e61fa17a912ffe6","impliedFormat":1},{"version":"ac443b1f93babbfadff3aef4490044012ff461ba1cf1c7d90ac45f5a26863358","impliedFormat":1},{"version":"42e4cdd55aa23586b9aff929e2c216150276a37d30c2cf7c0f32ba917722b5e0","impliedFormat":1},{"version":"4a1ed19ead46b1dd5a319d533fb92162b4ef052ab1c690889cb2eaee293441a1","impliedFormat":1},{"version":"d0d5b967e5c36354b2f13b4bfb78aae4c1685efa9df3fd946d2e576d370e9302","impliedFormat":1},{"version":"8076164b388640f7856b25e945a2ded7738e0f8674ac50c256734067b0f0b1b9","impliedFormat":1},{"version":"36819a1e04a8dbed754a5b3ba2fd5aca2eafb95977eaad6356d77df596c732f4","impliedFormat":1},{"version":"5fe9c19f085365b73956e27becc5167ad25c5fb024bed4728884966a0faab3f3","impliedFormat":1},{"version":"d67961ebada9a5e5c393d9c46a4155877a9f7a48b02a0afc6bbe4e87061e46f5","impliedFormat":1},{"version":"d5e88cd4816669da170c646844042bc83f4523275f85060cf3e2b5b3bf902ee0","impliedFormat":1},{"version":"137ee20e77a23986e9a1fdf6397b555e6d3073bdcca15927c40671d1ac564aac","impliedFormat":1},{"version":"a28b00d18def7993bc502f19be6abdb89db2548fe946a51f0771b8ed26a6786c","impliedFormat":1},{"version":"0fc6ddce4aabc8d84a6aa6644e1012a1474ba844ed6bddc7bea7115583e8a72e","impliedFormat":1},{"version":"0cba3a5d7b81356222594442753cf90dd2892e5ccfe1d262aaca6896ba6c1380","impliedFormat":1},{"version":"a69c09dbea52352f479d3e7ac949fde3d17b195abe90b045d619f747b38d6d1a","impliedFormat":1},{"version":"77f0b5c6a193a699c9f7d7fb0578e64e562d271afa740783665d2a827104a873","affectsGlobalScope":true,"impliedFormat":1},{"version":"e5979905796fe2740d85fbaf4f11f42b7ee1851421afe750823220813421b1af","impliedFormat":1},{"version":"fcdcb42da18dd98dc286b1876dd425791772036012ae61263c011a76b13a190f","affectsGlobalScope":true,"impliedFormat":1},{"version":"1dab5ab6bcf11de47ab9db295df8c4f1d92ffa750e8f095e88c71ce4c3299628","impliedFormat":1},{"version":"f71f46ccd5a90566f0a37b25b23bc4684381ab2180bdf6733f4e6624474e1894","impliedFormat":1},{"version":"54e65985a3ee3cec182e6a555e20974ea936fc8b8d1738c14e8ed8a42bd921d4","affectsGlobalScope":true,"impliedFormat":1},{"version":"82408ed3e959ddc60d3e9904481b5a8dc16469928257af22a3f7d1a3bc7fd8c4","impliedFormat":1},{"version":"5b30f550565fd0a7524282c81c27fe8534099e2cd26170ca80852308f07ae68d","impliedFormat":1},{"version":"34e5de87d983bc6aefef8b17658556e3157003e8d9555d3cb098c6bef0b5fbc8","impliedFormat":1},{"version":"d97cd8a4a42f557fc62271369ed0461c8e50d47b7f9c8ad0b5462f53306f6060","impliedFormat":1},{"version":"f27371653aded82b2b160f7a7033fb4a5b1534b6f6081ef7be1468f0f15327d3","impliedFormat":1},{"version":"c762cd6754b13a461c54b59d0ae0ab7aeef3c292c6cf889873f786ee4d8e75c9","impliedFormat":1},{"version":"f4ea7d5df644785bd9fbf419930cbaec118f0d8b4160037d2339b8e23c059e79","impliedFormat":1},{"version":"bfea28e6162ed21a0aeed181b623dcf250aa79abf49e24a6b7e012655af36d81","affectsGlobalScope":true,"impliedFormat":1},{"version":"b8aca9d0c81abb02bec9b7621983ae65bde71da6727580070602bd2500a9ce2a","impliedFormat":1},{"version":"ae97e20f2e10dbeec193d6a2f9cd9a367a1e293e7d6b33b68bacea166afd7792","impliedFormat":1},{"version":"10d4796a130577d57003a77b95d8723530bbec84718e364aa2129fa8ffba0378","impliedFormat":1},{"version":"063f53ff674228c190efa19dd9448bcbd540acdbb48a928f4cf3a1b9f9478e43","impliedFormat":1},{"version":"bf73c576885408d4a176f44a9035d798827cc5020d58284cb18d7573430d9022","impliedFormat":1},{"version":"7ae078ca42a670445ae0c6a97c029cb83d143d62abd1730efb33f68f0b2c0e82","impliedFormat":1},{"version":"e8b18c6385ff784228a6f369694fcf1a6b475355ba89090a88de13587a9391d5","affectsGlobalScope":true,"impliedFormat":1},{"version":"287b21dc1d1b9701c92e15e7dd673dfe6044b15812956377adffb6f08825b1bc","impliedFormat":1},{"version":"12eea70b5e11e924bb0543aea5eadc16ced318aa26001b453b0d561c2fd0bd1e","impliedFormat":1},{"version":"08777cd9318d294646b121838574e1dd7acbb22c21a03df84e1f2c87b1ad47f2","impliedFormat":1},{"version":"08a90bcdc717df3d50a2ce178d966a8c353fd23e5c392fd3594a6e39d9bb6304","impliedFormat":1},{"version":"4cd4cff679c9b3d9239fd7bf70293ca4594583767526916af8e5d5a47d0219c7","affectsGlobalScope":true,"impliedFormat":1},{"version":"2a12d2da5ac4c4979401a3f6eaafa874747a37c365e4bc18aa2b171ae134d21b","impliedFormat":1},{"version":"002b837927b53f3714308ecd96f72ee8a053b8aeb28213d8ec6de23ed1608b66","impliedFormat":1},{"version":"1dc9c847473bb47279e398b22c740c83ea37a5c88bf66629666e3cf4c5b9f99c","impliedFormat":1},{"version":"a9e4a5a24bf2c44de4c98274975a1a705a0abbaad04df3557c2d3cd8b1727949","impliedFormat":1},{"version":"00fa7ce8bc8acc560dc341bbfdf37840a8c59e6a67c9bfa3fa5f36254df35db2","impliedFormat":1},{"version":"1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff","impliedFormat":1},{"version":"806ef4cac3b3d9fa4a48d849c8e084d7c72fcd7b16d76e06049a9ed742ff79c0","affectsGlobalScope":true,"impliedFormat":1},{"version":"44b8b584a338b190a59f4f6929d072431950c7bd92ec2694821c11bce180c8a5","impliedFormat":1},{"version":"5f0ed51db151c2cdc4fa3bb0f44ce6066912ad001b607a34e65a96c52eb76248","impliedFormat":1},{"version":"af9771b066ec35ffa1c7db391b018d2469d55e51b98ae95e62b6cbef1b0169ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"664d8f2d59164f2e08c543981453893bc7e003e4dfd29651ce09db13e9457980","impliedFormat":1},{"version":"103d70bfbeb3cd3a3f26d1705bf986322d8738c2c143f38ebb743b1e228d7444","impliedFormat":1},{"version":"f52fbf64c7e480271a9096763c4882d356b05cab05bf56a64e68a95313cd2ce2","impliedFormat":1},{"version":"59bdb65f28d7ce52ccfc906e9aaf422f8b8534b2d21c32a27d7819be5ad81df7","impliedFormat":1},{"version":"3a2da34079a2567161c1359316a32e712404b56566c45332ac9dcee015ecce9f","affectsGlobalScope":true,"impliedFormat":1},{"version":"28a2e7383fd898c386ffdcacedf0ec0845e5d1a86b5a43f25b86bc315f556b79","impliedFormat":1},{"version":"3aff9c8c36192e46a84afe7b926136d520487155154ab9ba982a8b544ea8fc95","impliedFormat":1},{"version":"a880cf8d85af2e4189c709b0fea613741649c0e40fffb4360ec70762563d5de0","impliedFormat":1},{"version":"85bbf436a15bbeda4db888be3062d47f99c66fd05d7c50f0f6473a9151b6a070","impliedFormat":1},{"version":"9f9c49c95ecd25e0cb2587751925976cf64fd184714cb11e213749c80cf0f927","impliedFormat":1},{"version":"f0c75c08a71f9212c93a719a25fb0320d53f2e50ca89a812640e08f8ad8c408c","impliedFormat":1},{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true,"impliedFormat":1},{"version":"9cafe917bf667f1027b2bb62e2de454ecd2119c80873ad76fc41d941089753b8","impliedFormat":1},{"version":"277afd6ab6ec72889e2988e0ddd7d138c1f512e68a1fa4e90eedfd71e2097a51","impliedFormat":1},{"version":"c0908f85f2b645d375127a3b53a17a65f782e17962d5c1eb68f08b1188acbf15","impliedFormat":1},{"version":"3fadac5d409cc2f27b1d2f4e7568600f02840205f301c9ae7a3068b46476438b","impliedFormat":1},{"version":"da6aae64ad559286830fd44c81e3d33303348f184af7db4fde8dd99ae9749407","impliedFormat":1},{"version":"3633f87c97d359cb55fa7bf0668fb2be8a23342951af6ec2d06e6d0cf7409371","impliedFormat":1},{"version":"cc3a5427d44fc77ff25e80b3edee4650a51f83de761faf5e633994ecf1ab1b44","impliedFormat":1},{"version":"b350eda75c6e47299b36002b31d5b220c405c21c365e708989829db013fadbb4","impliedFormat":1},{"version":"f421882756b6714834ae4687ab1aeadf344a1cc45437d2edffbac020ff3801c1","impliedFormat":1},{"version":"1d61d6ad832dabafbf63b86c5a79d704f2c8763ada9318e135b17a3cb2d09b32","impliedFormat":1},{"version":"e5cef5de3e5ad3436d414d20743231e284733b9cf4375dc79eff4fcca4282f99","impliedFormat":1},{"version":"e624419ba84e33e661e89a28083119ca41f6953dba09a4f82b660684087afe6d","impliedFormat":1},{"version":"942be430bd0feaced2e3e598273b17e50ea565ec9dac840b580b0b99e1a3cd5c","impliedFormat":1},{"version":"73350006cec5a0c6b71d53b0b0ddbfb82be96752a9c4e3c904c59e633bc9485e","impliedFormat":1},{"version":"a7df5c2e9594966c7e0d4a763b13ed5727506d892669df5f7bc9826f539c1d35","impliedFormat":1},{"version":"258cc5cd6891f6bcbaccefd953997038844e7f65d582cac987ffabf7181bcd4c","impliedFormat":1},{"version":"00a6db28fc4df6ddf10adbe630d9df620ec13af19039c1869653e60dafa739d2","impliedFormat":1},{"version":"649324d5abb5464aabe35d86cd0eef16562df811f0971481cee664afa5acbc88","impliedFormat":1},{"version":"f02da9dd36d7a9aa33c9b2e37ef1f54b0d9ad6a713bae372ae4b72890e40c168","impliedFormat":1},{"version":"3a5652c44d7b3ee47b1d294b1893b30253d8fb6a1ecaafaf5fdef5fdc118f54c","impliedFormat":1},{"version":"4fba134e9015779329678ff1fd1afc32bbbf391b1f419f7622a3ecde7bbfc355","impliedFormat":1},{"version":"af75984f58aa9205be02b0a2248d05f6105a8d4bf8be0baca294b5ceaa10e33e","impliedFormat":1},{"version":"45a910666b455daf042c0a0cfa610c20ea59a0aaf702f93d3b467a05f9a27e20","impliedFormat":1},{"version":"5580ff53b5f6f1ecdb68ecb61327e63112f97660912c15444c1f8a08f69c19dc","impliedFormat":1},{"version":"84fb7c52fc116ddcbd1b34535e387053f2a0134d11c5e39b193f4c1328fb1fb5","impliedFormat":1},{"version":"fd3cd8bf3c90ef4694195a617a5daaac561d8be52ba33c607f170c11f3c50154","impliedFormat":1},{"version":"6852fc2f309e330e38694bad95bde670c384d1498bf4fbe3a751761b43279934","impliedFormat":1},{"version":"9f963b28320dd50221cd23f23059bc23cc7799c7025b44942da68974f90c2e6c","impliedFormat":1},{"version":"c17329bcf495af58e3010f8e61af51709aaa24a6664d8557a7d01a82b5397c59","impliedFormat":1},{"version":"4eebb617b12f21864e6641d0a9eefaca77a9ccf93f00bb7d50b26d8073866e53","impliedFormat":1},{"version":"ca0b43e2565d78809383e9a025b0638a5e65bcde4a2b68ff2c6fa5013642db46","impliedFormat":1},{"version":"1d0a0e5c6471d81467c3fecfa4db4e93ee87d364b776feb83b18d773ad9496d5","impliedFormat":1},{"version":"ef6eddcbf08e7ae71cd9ba8da47e9a3cfc7db36650af48f1b440a5ed50eeee7a","impliedFormat":1},{"version":"e14ee3cb4b764895f2ff2fed229df10b59df8a761c79d8e91d868793322b8896","impliedFormat":1},{"version":"7e36003872035a49bc3a5f21351c37d0e418f60d994ecc470a9463b33b4a7c12","impliedFormat":1},{"version":"b862345e219e6a4d829f7b7cf6d2d6e91e6fa00c29a7c6c86a3f68c77c25de39","impliedFormat":1},{"version":"5b919d9204446816876000e03f033458527bde5e3637783b2bc2e7e9ef7ce897","impliedFormat":1},{"version":"213984ba990f03127a98c3f022d5ca0f0d42df64d4dca199f7319448ce6f3021","impliedFormat":1},{"version":"020ab2020569964d12e40c68ceae39f40f6c0bee9d502a180f039fcb59c2e34d","impliedFormat":1},{"version":"aa50dc8a102c76282915e78944293a777866efe6d220a28884ac4a42d7f4c4e2","impliedFormat":1},{"version":"2b88f02598c9de626b35fbe3ffb1ef33ad9fd175e36e06ba27dc79e444796f6c","impliedFormat":1},{"version":"b728dc56eb9b0d27b4044e076c155f3cd3a121a4a9939afe829cfc0d680d423b","impliedFormat":1},{"version":"324b7298f76ce938cd28d2698a0767ca3c740bc843fd9104e171be8eca839555","impliedFormat":1},{"version":"76aa33edb0042dd572d64e4bda231374390d250d29eeab7e7f27010e8f826006","impliedFormat":1},{"version":"03b6d387edf18a9ee8126e705edff759f65d9c602e11b649e13a5261fe6951a4","impliedFormat":1},{"version":"bd417d58253e07264fbeacda216296af3274af2a2fcd335829598d3b04166e09","signature":"a2e0aca3a13a3a6e787129bb908cfe040bd64a3d546be3ce734ee0344627a62e","impliedFormat":99},{"version":"bd467a3e4ed6fa1810be545f1765a1f70d275f8d0958d4928c3767e88cd5fc31","signature":"451ae5368288c8d85f92f4aa9273ee655a3358ae5b64b2c0793e9571dc326691","impliedFormat":99},{"version":"8a77716e90b79ad5f59a46b5736344bf4fcfcd06972e8c0aa047fb4e0b66a1c5","signature":"6840f7184ff26cb974add913dd012ade2b31614f1bb17472da1423b8e2302a77","impliedFormat":99},{"version":"cb732dfea79ca2a9a5fd4ed240df67d6c47fd5b66fe188c645367efd1762ed24","signature":"39257e47f71a52d198342c47d3a6b35338a3c8618e4335b56530f2cb3b0dc511","impliedFormat":99},{"version":"3f6d6465811321abc30a1e5f667feed63e5b3917b3d6c8d6645daf96c75f97ba","affectsGlobalScope":true,"impliedFormat":1}],"options":{"alwaysStrict":true,"declaration":true,"esModuleInterop":true,"module":6,"noFallthroughCasesInSwitch":true,"noImplicitAny":true,"noImplicitReturns":true,"noImplicitThis":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./","rootDir":"../src","skipLibCheck":true,"sourceMap":true,"strict":true,"strictFunctionTypes":true,"strictNullChecks":true,"strictPropertyInitialization":true,"target":7,"tsBuildInfoFile":"./.tsbuildinfo"},"fileIdsList":[[288],[175,288],[175,176,177,178,288],[175,179,180,181,288],[212,216,217,288],[212,215,288],[215,288],[216,218,220,288],[212,215,216,217,218,219,288],[212,215,219,223,224,225,288],[212,215,219,226,288],[212,288],[288,314],[212,213,288],[213,214,288],[240,241,242,243,288],[212,215,221,224,226,227,288],[288,317,318,319,320],[227,288],[212,227,232,288],[212,219,227,288],[212,227,235,236,237,288],[212,219,227,233,288],[222,288],[223,225,288,296,299,300],[223,225,288,300],[215,219,223,224,226,288,295,296],[223,288,300],[223,226,288,297],[215,224,226,288],[223,226,288,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311],[223,288,298],[288,295,298],[212,219,223,224,225,226,227,288,297],[223,225,288,296,298],[223,288,297,298],[288,327,328],[288,323,324],[212,288,323],[288,331,332,333],[212,226,227,232,233,234,238,288],[230,231,288],[229,288],[230,288],[127,288],[137,288],[129,288],[126,128,130,138,139,140,141,288],[55,125,288],[51,54,288],[48,59,288],[48,51,54,58,61,288],[48,51,55,58,59,60,288],[47,52,58,288],[47,48,52,58,84,288],[44,48,288],[48,51,52,54,57,58,61,69,70,81,85,107,110,112,116,288],[61,288],[52,54,288],[43,47,288],[48,51,288],[48,52,58,288],[48,51,52,54,56,288],[48,54,55,61,111,288],[48,55,288],[48,61,288],[58,59,61,288],[51,54,58,59,61,62,288],[51,288],[49,50,288],[164,288],[187,189,190,191,192,193,194,195,196,197,198,199,288],[187,188,190,191,192,193,194,195,196,197,198,199,288],[188,189,190,191,192,193,194,195,196,197,198,199,288],[187,188,189,191,192,193,194,195,196,197,198,199,288],[187,188,189,190,192,193,194,195,196,197,198,199,288],[187,188,189,190,191,193,194,195,196,197,198,199,288],[187,188,189,190,191,192,194,195,196,197,198,199,288],[187,188,189,190,191,192,193,195,196,197,198,199,288],[187,188,189,190,191,192,193,194,196,197,198,199,288],[187,188,189,190,191,192,193,194,195,197,198,199,288],[187,188,189,190,191,192,193,194,195,196,198,199,288],[187,188,189,190,191,192,193,194,195,196,197,199,288],[187,188,189,190,191,192,193,194,195,196,197,198,288],[245,288],[248,288],[249,254,288],[250,260,261,268,277,287,288],[250,251,260,268,288],[252,288],[253,254,261,269,288],[254,277,284,288],[255,257,260,268,288],[256,288],[257,258,288],[259,260,288],[260,288],[260,261,262,277,287,288],[260,261,262,277,288],[288,292],[263,268,277,287,288],[260,261,263,264,268,277,284,287,288],[263,265,277,284,287,288],[245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294],[260,266,288],[267,287,288],[257,260,268,277,288],[269,288],[270,288],[248,271,288],[272,286,288,292],[273,288],[274,288],[260,275,288],[275,276,288,290],[260,277,278,279,288],[277,279,288],[277,278,288],[280,288],[281,288],[260,282,283,288],[282,283,288],[254,268,277,284,288],[285,288],[268,286,288],[249,263,274,287,288],[254,288],[277,288,289],[288,290],[288,291],[249,254,260,262,271,277,287,288,290,292],[277,288,293],[200,288],[48,51,52,288],[152,154,288],[53,151,152,153,154,155,156,157,158,159,160,161,162,288],[152,156,288],[151,288],[48,53,57,82,152,288],[48,57,150,151,288],[151,152,153,288],[154,156,288],[151,152,288],[48,51,61,117,152,155,157,159,160,288],[184,203,288],[184,288],[184,185,288],[212,215,224,227,228,229,232,239,244,288,312,336,337],[288,338],[212,219,221,224,225,229,233,234,238,239,288,313,315,316,321,322,325,326,329,330,334,335],[48,54,63,65,71,288],[48,57,63,69,81,82,107,288],[48,57,63,68,69,70,71,81,82,85,106,107,110,112,288],[48,54,57,58,63,65,68,69,70,82,148,288],[54,288],[48,58,68,69,81,82,288],[48,57,58,65,68,69,71,80,81,82,288],[55,79,288],[48,52,57,58,62,63,68,70,72,83,84,85,106,107,108,109,110,112,113,114,115,117,143,145,146,147,149,288],[143,288],[48,106,118,142,288],[48,63,69,71,144,288],[48,52,57,58,69,110,288],[48,58,69,81,82,288],[54,58,63,65,68,69,70,71,288],[48,51,55,58,59,67,288],[64,288],[65,288],[86,105,288],[104,288],[79,288],[73,288],[73,79,288],[55,73,288],[73,74,75,76,77,78,288],[46,47,288],[46,288],[45,288],[43,288],[43,133,288],[47,132,133,134,135,136,288],[43,44,45,46,131,288],[43,44,45,288],[125,288],[119,288],[119,125,288],[55,119,288],[119,120,121,122,123,124,288],[103,288],[98,102,288],[87,288],[98,99,100,101,288],[89,90,288],[89,288],[91,288],[92,288],[88,288],[88,94,288],[90,93,94,95,96,97,288],[87,88,89,91,92,288],[87,88,91,288],[163,165,171,172,288],[165,288],[171,173,174,211,288,340,341],[176,178,182,186,202,204,205,288],[210,288],[42,171,182,183,186,199,201,205,206,209,288],[207,208,288],[163,166,167,171,288],[42,163,167,168,169,170,288],[171,174,288,339,340],[163,171,172],[171,173,174,211,340,341],[182,205],[210],[171,182,205],[163,171],[163,170],[171,339]],"referencedMap":[[144,1],[177,2],[178,2],[180,2],[179,3],[182,4],[176,2],[202,1],[181,2],[175,1],[218,5],[217,6],[216,7],[221,8],[220,9],[226,10],[227,11],[313,6],[314,12],[315,13],[316,12],[213,12],[214,14],[215,15],[212,1],[240,1],[241,7],[242,1],[244,16],[243,1],[228,17],[317,1],[321,18],[319,12],[318,1],[320,19],[233,20],[235,21],[238,22],[236,1],[237,23],[322,12],[229,1],[223,24],[222,1],[219,1],[301,25],[302,26],[297,27],[303,28],[304,29],[305,29],[296,30],[312,31],[307,25],[306,32],[308,33],[298,34],[309,28],[310,26],[300,35],[311,32],[299,36],[329,37],[327,1],[328,1],[330,12],[325,38],[324,39],[323,1],[234,12],[326,1],[331,12],[332,1],[334,40],[333,12],[224,6],[335,7],[239,41],[225,1],[232,42],[230,43],[231,44],[129,45],[139,46],[130,47],[142,48],[127,1],[128,45],[126,49],[138,46],[140,46],[71,50],[109,51],[82,52],[61,53],[60,1],[107,54],[85,55],[116,56],[141,1],[117,57],[70,58],[84,59],[48,60],[52,61],[110,62],[57,63],[112,64],[56,65],[81,66],[62,67],[63,68],[54,1],[58,1],[69,1],[50,69],[51,70],[49,69],[165,71],[188,72],[189,73],[187,74],[190,75],[191,76],[192,77],[193,78],[194,79],[195,80],[196,81],[197,82],[198,83],[199,84],[344,1],[164,1],[245,85],[246,85],[248,86],[249,87],[250,88],[251,89],[252,90],[253,91],[254,92],[255,93],[256,94],[257,95],[258,95],[259,96],[260,97],[261,98],[262,99],[247,100],[294,1],[263,101],[264,102],[265,103],[295,104],[266,105],[267,106],[268,107],[269,108],[270,109],[271,110],[272,111],[273,112],[274,113],[275,114],[276,115],[277,116],[279,117],[278,118],[280,119],[281,120],[282,121],[283,122],[284,123],[285,124],[286,125],[287,126],[288,127],[289,128],[290,129],[291,130],[292,131],[293,132],[201,133],[200,1],[162,1],[53,134],[155,135],[163,136],[157,137],[151,1],[153,138],[158,139],[152,140],[154,141],[159,142],[156,143],[160,143],[161,144],[166,1],[168,1],[204,145],[185,1],[203,146],[184,1],[183,1],[186,147],[337,1],[338,148],[339,149],[336,150],[111,1],[59,1],[146,151],[108,152],[115,153],[149,154],[148,155],[114,156],[83,157],[80,158],[150,159],[118,160],[143,161],[145,162],[147,163],[113,164],[72,165],[68,166],[67,1],[66,70],[65,167],[64,168],[106,169],[105,170],[86,1],[73,171],[76,172],[77,173],[74,174],[75,172],[79,175],[78,171],[44,1],[45,176],[136,1],[47,177],[131,178],[133,179],[134,180],[43,1],[137,181],[132,182],[46,183],[135,1],[119,184],[122,185],[123,186],[120,187],[121,185],[125,188],[124,184],[8,1],[10,1],[9,1],[2,1],[11,1],[12,1],[13,1],[14,1],[15,1],[16,1],[17,1],[18,1],[3,1],[4,1],[22,1],[19,1],[20,1],[21,1],[23,1],[24,1],[25,1],[5,1],[26,1],[27,1],[28,1],[29,1],[6,1],[30,1],[31,1],[32,1],[33,1],[7,1],[34,1],[39,1],[40,1],[35,1],[36,1],[37,1],[38,1],[1,1],[41,1],[55,1],[104,189],[103,190],[101,191],[87,1],[102,192],[91,193],[97,1],[90,194],[92,195],[100,196],[99,196],[94,197],[95,198],[88,1],[98,199],[93,200],[89,201],[96,1],[42,1],[173,202],[174,1],[167,203],[342,204],[206,205],[207,1],[211,206],[210,207],[208,1],[209,208],[205,1],[172,209],[169,1],[171,210],[341,211],[340,1],[170,1],[343,1]],"exportedModulesMap":[[144,1],[177,2],[178,2],[180,2],[179,3],[182,4],[176,2],[202,1],[181,2],[175,1],[218,5],[217,6],[216,7],[221,8],[220,9],[226,10],[227,11],[313,6],[314,12],[315,13],[316,12],[213,12],[214,14],[215,15],[212,1],[240,1],[241,7],[242,1],[244,16],[243,1],[228,17],[317,1],[321,18],[319,12],[318,1],[320,19],[233,20],[235,21],[238,22],[236,1],[237,23],[322,12],[229,1],[223,24],[222,1],[219,1],[301,25],[302,26],[297,27],[303,28],[304,29],[305,29],[296,30],[312,31],[307,25],[306,32],[308,33],[298,34],[309,28],[310,26],[300,35],[311,32],[299,36],[329,37],[327,1],[328,1],[330,12],[325,38],[324,39],[323,1],[234,12],[326,1],[331,12],[332,1],[334,40],[333,12],[224,6],[335,7],[239,41],[225,1],[232,42],[230,43],[231,44],[129,45],[139,46],[130,47],[142,48],[127,1],[128,45],[126,49],[138,46],[140,46],[71,50],[109,51],[82,52],[61,53],[60,1],[107,54],[85,55],[116,56],[141,1],[117,57],[70,58],[84,59],[48,60],[52,61],[110,62],[57,63],[112,64],[56,65],[81,66],[62,67],[63,68],[54,1],[58,1],[69,1],[50,69],[51,70],[49,69],[165,71],[188,72],[189,73],[187,74],[190,75],[191,76],[192,77],[193,78],[194,79],[195,80],[196,81],[197,82],[198,83],[199,84],[344,1],[164,1],[245,85],[246,85],[248,86],[249,87],[250,88],[251,89],[252,90],[253,91],[254,92],[255,93],[256,94],[257,95],[258,95],[259,96],[260,97],[261,98],[262,99],[247,100],[294,1],[263,101],[264,102],[265,103],[295,104],[266,105],[267,106],[268,107],[269,108],[270,109],[271,110],[272,111],[273,112],[274,113],[275,114],[276,115],[277,116],[279,117],[278,118],[280,119],[281,120],[282,121],[283,122],[284,123],[285,124],[286,125],[287,126],[288,127],[289,128],[290,129],[291,130],[292,131],[293,132],[201,133],[200,1],[162,1],[53,134],[155,135],[163,136],[157,137],[151,1],[153,138],[158,139],[152,140],[154,141],[159,142],[156,143],[160,143],[161,144],[166,1],[168,1],[204,145],[185,1],[203,146],[184,1],[183,1],[186,147],[337,1],[338,148],[339,149],[336,150],[111,1],[59,1],[146,151],[108,152],[115,153],[149,154],[148,155],[114,156],[83,157],[80,158],[150,159],[118,160],[143,161],[145,162],[147,163],[113,164],[72,165],[68,166],[67,1],[66,70],[65,167],[64,168],[106,169],[105,170],[86,1],[73,171],[76,172],[77,173],[74,174],[75,172],[79,175],[78,171],[44,1],[45,176],[136,1],[47,177],[131,178],[133,179],[134,180],[43,1],[137,181],[132,182],[46,183],[135,1],[119,184],[122,185],[123,186],[120,187],[121,185],[125,188],[124,184],[8,1],[10,1],[9,1],[2,1],[11,1],[12,1],[13,1],[14,1],[15,1],[16,1],[17,1],[18,1],[3,1],[4,1],[22,1],[19,1],[20,1],[21,1],[23,1],[24,1],[25,1],[5,1],[26,1],[27,1],[28,1],[29,1],[6,1],[30,1],[31,1],[32,1],[33,1],[7,1],[34,1],[39,1],[40,1],[35,1],[36,1],[37,1],[38,1],[1,1],[41,1],[55,1],[104,189],[103,190],[101,191],[87,1],[102,192],[91,193],[97,1],[90,194],[92,195],[100,196],[99,196],[94,197],[95,198],[88,1],[98,199],[93,200],[89,201],[96,1],[173,212],[342,213],[206,214],[211,215],[210,216],[172,217],[171,218],[341,219],[170,1]],"semanticDiagnosticsPerFile":[144,177,178,180,179,182,176,202,181,175,218,217,216,221,220,226,227,313,314,315,316,213,214,215,212,240,241,242,244,243,228,317,321,319,318,320,233,235,238,236,237,322,229,223,222,219,301,302,297,303,304,305,296,312,307,306,308,298,309,310,300,311,299,329,327,328,330,325,324,323,234,326,331,332,334,333,224,335,239,225,232,230,231,129,139,130,142,127,128,126,138,140,71,109,82,61,60,107,85,116,141,117,70,84,48,52,110,57,112,56,81,62,63,54,58,69,50,51,49,165,188,189,187,190,191,192,193,194,195,196,197,198,199,344,164,245,246,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,247,294,263,264,265,295,266,267,268,269,270,271,272,273,274,275,276,277,279,278,280,281,282,283,284,285,286,287,288,289,290,291,292,293,201,200,162,53,155,163,157,151,153,158,152,154,159,156,160,161,166,168,204,185,203,184,183,186,337,338,339,336,111,59,146,108,115,149,148,114,83,80,150,118,143,145,147,113,72,68,67,66,65,64,106,105,86,73,76,77,74,75,79,78,44,45,136,47,131,133,134,43,137,132,46,135,119,122,123,120,121,125,124,8,10,9,2,11,12,13,14,15,16,17,18,3,4,22,19,20,21,23,24,25,5,26,27,28,29,6,30,31,32,33,7,34,39,40,35,36,37,38,1,41,55,104,103,101,87,102,91,97,90,92,100,99,94,95,88,98,93,89,96,42,173,174,167,342,206,207,211,210,208,209,205,172,169,171,341,340,170,343]},"version":"4.8.2"}
|
package/dist/constants.d.ts
CHANGED
@@ -1,7 +1,7 @@
|
|
1
|
-
export declare const
|
1
|
+
export declare const RLN_REGISTRY_ABI: string[];
|
2
|
+
export declare const RLN_STORAGE_ABI: string[];
|
2
3
|
export declare const SEPOLIA_CONTRACT: {
|
3
4
|
chainId: number;
|
4
|
-
startBlock: number;
|
5
5
|
address: string;
|
6
6
|
abi: string[];
|
7
7
|
};
|
package/dist/constants.js
CHANGED
@@ -1,14 +1,67 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
"
|
4
|
-
"
|
5
|
-
"
|
6
|
-
"
|
1
|
+
// ref https://github.com/waku-org/waku-rln-contract/blob/19fded82bca07e7b535b429dc507cfb83f10dfcf/deployments/sepolia/WakuRlnRegistry_Implementation.json#L3
|
2
|
+
export const RLN_REGISTRY_ABI = [
|
3
|
+
"error IncompatibleStorage()",
|
4
|
+
"error IncompatibleStorageIndex()",
|
5
|
+
"error NoStorageContractAvailable()",
|
6
|
+
"error StorageAlreadyExists(address storageAddress)",
|
7
|
+
"event AdminChanged(address previousAdmin, address newAdmin)",
|
8
|
+
"event BeaconUpgraded(address indexed beacon)",
|
9
|
+
"event Initialized(uint8 version)",
|
10
|
+
"event NewStorageContract(uint16 index, address storageAddress)",
|
11
|
+
"event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)",
|
12
|
+
"event Upgraded(address indexed implementation)",
|
13
|
+
"function forceProgress()",
|
14
|
+
"function initialize(address _poseidonHasher)",
|
15
|
+
"function newStorage()",
|
16
|
+
"function nextStorageIndex() view returns (uint16)",
|
17
|
+
"function owner() view returns (address)",
|
18
|
+
"function poseidonHasher() view returns (address)",
|
19
|
+
"function proxiableUUID() view returns (bytes32)",
|
20
|
+
"function register(uint16 storageIndex, uint256 commitment)",
|
21
|
+
"function register(uint256[] commitments)",
|
22
|
+
"function register(uint16 storageIndex, uint256[] commitments)",
|
23
|
+
"function registerStorage(address storageAddress)",
|
24
|
+
"function renounceOwnership()",
|
25
|
+
"function storages(uint16) view returns (address)",
|
26
|
+
"function transferOwnership(address newOwner)",
|
27
|
+
"function upgradeTo(address newImplementation)",
|
28
|
+
"function upgradeToAndCall(address newImplementation, bytes data) payable",
|
29
|
+
"function usingStorageIndex() view returns (uint16)",
|
30
|
+
];
|
31
|
+
// ref https://github.com/waku-org/waku-rln-contract/blob/19fded82bca07e7b535b429dc507cfb83f10dfcf/deployments/sepolia/WakuRlnStorage_0.json#L3
|
32
|
+
export const RLN_STORAGE_ABI = [
|
33
|
+
"constructor(address _poseidonHasher, uint16 _contractIndex)",
|
34
|
+
"error DuplicateIdCommitment()",
|
35
|
+
"error FullTree()",
|
36
|
+
"error InvalidIdCommitment(uint256 idCommitment)",
|
37
|
+
"error NotImplemented()",
|
38
|
+
"event MemberRegistered(uint256 idCommitment, uint256 index)",
|
39
|
+
"event MemberWithdrawn(uint256 idCommitment, uint256 index)",
|
40
|
+
"event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)",
|
41
|
+
"function DEPTH() view returns (uint256)",
|
42
|
+
"function MEMBERSHIP_DEPOSIT() view returns (uint256)",
|
43
|
+
"function SET_SIZE() view returns (uint256)",
|
44
|
+
"function contractIndex() view returns (uint16)",
|
45
|
+
"function deployedBlockNumber() view returns (uint32)",
|
46
|
+
"function idCommitmentIndex() view returns (uint256)",
|
47
|
+
"function isValidCommitment(uint256 idCommitment) view returns (bool)",
|
48
|
+
"function memberExists(uint256) view returns (bool)",
|
49
|
+
"function members(uint256) view returns (uint256)",
|
50
|
+
"function owner() view returns (address)",
|
51
|
+
"function poseidonHasher() view returns (address)",
|
52
|
+
"function register(uint256[] idCommitments)",
|
53
|
+
"function register(uint256 idCommitment) payable",
|
54
|
+
"function renounceOwnership()",
|
55
|
+
"function slash(uint256 idCommitment, address receiver, uint256[8] proof) pure",
|
56
|
+
"function stakedAmounts(uint256) view returns (uint256)",
|
57
|
+
"function transferOwnership(address newOwner)",
|
58
|
+
"function verifier() view returns (address)",
|
59
|
+
"function withdraw() pure",
|
60
|
+
"function withdrawalBalance(address) view returns (uint256)",
|
7
61
|
];
|
8
62
|
export const SEPOLIA_CONTRACT = {
|
9
63
|
chainId: 11155111,
|
10
|
-
|
11
|
-
|
12
|
-
abi: RLN_ABI,
|
64
|
+
address: "0xF1935b338321013f11068abCafC548A7B0db732C",
|
65
|
+
abi: RLN_REGISTRY_ABI,
|
13
66
|
};
|
14
67
|
//# sourceMappingURL=constants.js.map
|
package/dist/constants.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,6JAA6J;AAC7J,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,6BAA6B;IAC7B,kCAAkC;IAClC,oCAAoC;IACpC,oDAAoD;IACpD,6DAA6D;IAC7D,8CAA8C;IAC9C,kCAAkC;IAClC,gEAAgE;IAChE,qFAAqF;IACrF,gDAAgD;IAChD,0BAA0B;IAC1B,8CAA8C;IAC9C,uBAAuB;IACvB,mDAAmD;IACnD,yCAAyC;IACzC,kDAAkD;IAClD,iDAAiD;IACjD,4DAA4D;IAC5D,0CAA0C;IAC1C,+DAA+D;IAC/D,kDAAkD;IAClD,8BAA8B;IAC9B,kDAAkD;IAClD,8CAA8C;IAC9C,+CAA+C;IAC/C,0EAA0E;IAC1E,oDAAoD;CACrD,CAAC;AAEF,+IAA+I;AAC/I,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,6DAA6D;IAC7D,+BAA+B;IAC/B,kBAAkB;IAClB,iDAAiD;IACjD,wBAAwB;IACxB,6DAA6D;IAC7D,4DAA4D;IAC5D,qFAAqF;IACrF,yCAAyC;IACzC,sDAAsD;IACtD,4CAA4C;IAC5C,gDAAgD;IAChD,sDAAsD;IACtD,qDAAqD;IACrD,sEAAsE;IACtE,oDAAoD;IACpD,kDAAkD;IAClD,yCAAyC;IACzC,kDAAkD;IAClD,4CAA4C;IAC5C,iDAAiD;IACjD,8BAA8B;IAC9B,+EAA+E;IAC/E,wDAAwD;IACxD,8CAA8C;IAC9C,4CAA4C;IAC5C,0BAA0B;IAC1B,4DAA4D;CAC7D,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,OAAO,EAAE,QAAQ;IACjB,OAAO,EAAE,4CAA4C;IACrD,GAAG,EAAE,gBAAgB;CACtB,CAAC"}
|
package/dist/index.d.ts
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
import { RLNDecoder, RLNEncoder } from "./codec.js";
|
2
|
-
import {
|
2
|
+
import { RLN_REGISTRY_ABI, RLN_STORAGE_ABI, SEPOLIA_CONTRACT } from "./constants.js";
|
3
3
|
import { Keystore } from "./keystore/index.js";
|
4
4
|
import { IdentityCredential, Proof, ProofMetadata, RLNInstance } from "./rln.js";
|
5
5
|
import { RLNContract } from "./rln_contract.js";
|
6
6
|
import { MerkleRootTracker } from "./root_tracker.js";
|
7
7
|
export declare function create(): Promise<RLNInstance>;
|
8
|
-
export { Keystore, RLNInstance, IdentityCredential, Proof, ProofMetadata, RLNEncoder, RLNDecoder, MerkleRootTracker, RLNContract,
|
8
|
+
export { Keystore, RLNInstance, IdentityCredential, Proof, ProofMetadata, RLNEncoder, RLNDecoder, MerkleRootTracker, RLNContract, RLN_STORAGE_ABI, RLN_REGISTRY_ABI, SEPOLIA_CONTRACT, };
|
package/dist/index.js
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
import { RLNDecoder, RLNEncoder } from "./codec.js";
|
2
|
-
import {
|
2
|
+
import { RLN_REGISTRY_ABI, RLN_STORAGE_ABI, SEPOLIA_CONTRACT, } from "./constants.js";
|
3
3
|
import { Keystore } from "./keystore/index.js";
|
4
4
|
import { IdentityCredential, Proof, ProofMetadata, RLNInstance, } from "./rln.js";
|
5
5
|
import { RLNContract } from "./rln_contract.js";
|
@@ -12,5 +12,5 @@ export async function create() {
|
|
12
12
|
const rlnModule = await import("./rln.js");
|
13
13
|
return await rlnModule.create();
|
14
14
|
}
|
15
|
-
export { Keystore, RLNInstance, IdentityCredential, Proof, ProofMetadata, RLNEncoder, RLNDecoder, MerkleRootTracker, RLNContract,
|
15
|
+
export { Keystore, RLNInstance, IdentityCredential, Proof, ProofMetadata, RLNEncoder, RLNDecoder, MerkleRootTracker, RLNContract, RLN_STORAGE_ABI, RLN_REGISTRY_ABI, SEPOLIA_CONTRACT, };
|
16
16
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,gBAAgB,GACjB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EACL,kBAAkB,EAClB,KAAK,EACL,aAAa,EACb,WAAW,GACZ,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtD,iEAAiE;AACjE,MAAM,CAAC,KAAK,UAAU,MAAM;IAC1B,iEAAiE;IACjE,6DAA6D;IAC7D,kDAAkD;IAClD,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;IAC3C,OAAO,MAAM,SAAS,CAAC,MAAM,EAAE,CAAC;AAClC,CAAC;AAED,OAAO,EACL,QAAQ,EACR,WAAW,EACX,kBAAkB,EAClB,KAAK,EACL,aAAa,EACb,UAAU,EACV,UAAU,EACV,iBAAiB,EACjB,WAAW,EACX,eAAe,EACf,gBAAgB,EAChB,gBAAgB,GACjB,CAAC"}
|
package/dist/rln_contract.d.ts
CHANGED
@@ -4,9 +4,10 @@ declare type Member = {
|
|
4
4
|
pubkey: string;
|
5
5
|
index: number;
|
6
6
|
};
|
7
|
+
declare type Provider = ethers.Signer | ethers.providers.Provider;
|
7
8
|
declare type ContractOptions = {
|
8
9
|
address: string;
|
9
|
-
provider:
|
10
|
+
provider: Provider;
|
10
11
|
};
|
11
12
|
declare type FetchMembersOptions = {
|
12
13
|
fromBlock?: number;
|
@@ -14,14 +15,19 @@ declare type FetchMembersOptions = {
|
|
14
15
|
fetchChunks?: number;
|
15
16
|
};
|
16
17
|
export declare class RLNContract {
|
17
|
-
private
|
18
|
-
private membersFilter;
|
18
|
+
private registryContract;
|
19
19
|
private merkleRootTracker;
|
20
|
+
private deployBlock;
|
21
|
+
private storageIndex;
|
22
|
+
private storageContract;
|
23
|
+
private _membersFilter;
|
20
24
|
private _members;
|
21
25
|
static init(rlnInstance: RLNInstance, options: ContractOptions): Promise<RLNContract>;
|
22
26
|
constructor(rlnInstance: RLNInstance, { address, provider }: ContractOptions);
|
27
|
+
private initStorageContract;
|
23
28
|
get contract(): ethers.Contract;
|
24
29
|
get members(): Member[];
|
30
|
+
private get membersFilter();
|
25
31
|
fetchMembers(rlnInstance: RLNInstance, options?: FetchMembersOptions): Promise<void>;
|
26
32
|
processEvents(rlnInstance: RLNInstance, events: ethers.Event[]): void;
|
27
33
|
private insertMembers;
|
package/dist/rln_contract.js
CHANGED
@@ -1,28 +1,46 @@
|
|
1
1
|
import { ethers } from "ethers";
|
2
|
-
import {
|
2
|
+
import { RLN_REGISTRY_ABI, RLN_STORAGE_ABI } from "./constants.js";
|
3
3
|
import { MerkleRootTracker } from "./root_tracker.js";
|
4
4
|
export class RLNContract {
|
5
5
|
constructor(rlnInstance, { address, provider }) {
|
6
6
|
this._members = [];
|
7
7
|
const initialRoot = rlnInstance.getMerkleRoot();
|
8
|
-
this.
|
8
|
+
this.registryContract = new ethers.Contract(address, RLN_REGISTRY_ABI, provider);
|
9
9
|
this.merkleRootTracker = new MerkleRootTracker(5, initialRoot);
|
10
|
-
this.membersFilter = this.contract.filters.MemberRegistered();
|
11
10
|
}
|
12
11
|
static async init(rlnInstance, options) {
|
13
12
|
const rlnContract = new RLNContract(rlnInstance, options);
|
13
|
+
await rlnContract.initStorageContract(options.provider);
|
14
14
|
await rlnContract.fetchMembers(rlnInstance);
|
15
15
|
rlnContract.subscribeToMembers(rlnInstance);
|
16
16
|
return rlnContract;
|
17
17
|
}
|
18
|
+
async initStorageContract(provider) {
|
19
|
+
const index = await this.registryContract.usingStorageIndex();
|
20
|
+
const address = await this.registryContract.storages(index);
|
21
|
+
this.storageIndex = index;
|
22
|
+
this.storageContract = new ethers.Contract(address, RLN_STORAGE_ABI, provider);
|
23
|
+
this._membersFilter = this.storageContract.filters.MemberRegistered();
|
24
|
+
this.deployBlock = await this.storageContract.deployedBlockNumber();
|
25
|
+
}
|
18
26
|
get contract() {
|
19
|
-
|
27
|
+
if (!this.storageContract) {
|
28
|
+
throw Error("Storage contract was not initialized.");
|
29
|
+
}
|
30
|
+
return this.storageContract;
|
20
31
|
}
|
21
32
|
get members() {
|
22
33
|
return this._members;
|
23
34
|
}
|
35
|
+
get membersFilter() {
|
36
|
+
if (!this._membersFilter) {
|
37
|
+
throw Error("Members filter was not initialized.");
|
38
|
+
}
|
39
|
+
return this._membersFilter;
|
40
|
+
}
|
24
41
|
async fetchMembers(rlnInstance, options = {}) {
|
25
42
|
const registeredMemberEvents = await queryFilter(this.contract, {
|
43
|
+
fromBlock: this.deployBlock,
|
26
44
|
...options,
|
27
45
|
membersFilter: this.membersFilter,
|
28
46
|
});
|
@@ -95,9 +113,11 @@ export class RLNContract {
|
|
95
113
|
return this.registerWithKey(identityCredential);
|
96
114
|
}
|
97
115
|
async registerWithKey(credential) {
|
98
|
-
|
99
|
-
|
100
|
-
|
116
|
+
if (!this.storageIndex) {
|
117
|
+
throw Error("Cannot register credential, no storage contract index found.");
|
118
|
+
}
|
119
|
+
const txRegisterResponse = await this.registryContract.register(this.storageIndex, credential.IDCommitmentBigInt, {
|
120
|
+
gasLimit: 100000,
|
101
121
|
});
|
102
122
|
const txRegisterReceipt = await txRegisterResponse.wait();
|
103
123
|
return txRegisterReceipt?.events?.[0];
|
package/dist/rln_contract.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"rln_contract.js","sourceRoot":"","sources":["../src/rln_contract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,
|
1
|
+
{"version":3,"file":"rln_contract.js","sourceRoot":"","sources":["../src/rln_contract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAoBtD,MAAM,OAAO,WAAW;IAwBtB,YACE,WAAwB,EACxB,EAAE,OAAO,EAAE,QAAQ,EAAmB;QAjBhC,aAAQ,GAAa,EAAE,CAAC;QAmB9B,MAAM,WAAW,GAAG,WAAW,CAAC,aAAa,EAAE,CAAC;QAEhD,IAAI,CAAC,gBAAgB,GAAG,IAAI,MAAM,CAAC,QAAQ,CACzC,OAAO,EACP,gBAAgB,EAChB,QAAQ,CACT,CAAC;QACF,IAAI,CAAC,iBAAiB,GAAG,IAAI,iBAAiB,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;IACjE,CAAC;IAzBM,MAAM,CAAC,KAAK,CAAC,IAAI,CACtB,WAAwB,EACxB,OAAwB;QAExB,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAE1D,MAAM,WAAW,CAAC,mBAAmB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACxD,MAAM,WAAW,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;QAC5C,WAAW,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;QAE5C,OAAO,WAAW,CAAC;IACrB,CAAC;IAgBO,KAAK,CAAC,mBAAmB,CAAC,QAAkB;QAClD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,EAAE,CAAC;QAC9D,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAE5D,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,eAAe,GAAG,IAAI,MAAM,CAAC,QAAQ,CACxC,OAAO,EACP,eAAe,EACf,QAAQ,CACT,CAAC;QACF,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;QAEtE,IAAI,CAAC,WAAW,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,mBAAmB,EAAE,CAAC;IACtE,CAAC;IAED,IAAW,QAAQ;QACjB,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;YACzB,MAAM,KAAK,CAAC,uCAAuC,CAAC,CAAC;SACtD;QACD,OAAO,IAAI,CAAC,eAAkC,CAAC;IACjD,CAAC;IAED,IAAW,OAAO;QAChB,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,IAAY,aAAa;QACvB,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;YACxB,MAAM,KAAK,CAAC,qCAAqC,CAAC,CAAC;SACpD;QACD,OAAO,IAAI,CAAC,cAAoC,CAAC;IACnD,CAAC;IAEM,KAAK,CAAC,YAAY,CACvB,WAAwB,EACxB,UAA+B,EAAE;QAEjC,MAAM,sBAAsB,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE;YAC9D,SAAS,EAAE,IAAI,CAAC,WAAW;YAC3B,GAAG,OAAO;YACV,aAAa,EAAE,IAAI,CAAC,aAAa;SAClC,CAAC,CAAC;QACH,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,sBAAsB,CAAC,CAAC;IAC1D,CAAC;IAEM,aAAa,CAAC,WAAwB,EAAE,MAAsB;QACnE,MAAM,aAAa,GAAG,IAAI,GAAG,EAAoB,CAAC;QAClD,MAAM,aAAa,GAAG,IAAI,GAAG,EAA0B,CAAC;QAExD,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YACrB,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE;gBACb,OAAO;aACR;YAED,IAAI,GAAG,CAAC,OAAO,EAAE;gBACf,MAAM,KAAK,GAAW,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC;gBACrC,MAAM,WAAW,GAAG,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;gBACvD,IAAI,WAAW,IAAI,SAAS,EAAE;oBAC5B,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBACxB,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;iBACjD;qBAAM;oBACL,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;iBAC7C;aACF;iBAAM;gBACL,IAAI,cAAc,GAAG,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;gBACxD,IAAI,cAAc,IAAI,SAAS,EAAE;oBAC/B,cAAc,GAAG,EAAE,CAAC;iBACrB;gBAED,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACzB,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;aACpD;YAED,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;YAC/C,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,aAAa,CACnB,WAAwB,EACxB,QAAqC;QAErC,QAAQ,CAAC,OAAO,CAAC,CAAC,MAAsB,EAAE,WAAmB,EAAE,EAAE;YAC/D,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;gBACrB,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE;oBACb,OAAO;iBACR;gBAED,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;gBAC/B,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC;gBAC7B,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CACvC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EAC7B,EAAE,CACH,CAAC;gBACF,WAAW,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;gBACvC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;YACvC,CAAC,CAAC,CAAC;YAEH,MAAM,WAAW,GAAG,WAAW,CAAC,aAAa,EAAE,CAAC;YAChD,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,aAAa,CACnB,WAAwB,EACxB,QAA+B;QAE/B,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;QACjE,gBAAgB,CAAC,OAAO,CAAC,CAAC,OAAiB,EAAE,WAAmB,EAAE,EAAE;YAClE,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBACxB,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;gBAC7D,IAAI,GAAG,GAAG,CAAC,CAAC,EAAE;oBACZ,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;iBAC7B;gBACD,WAAW,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;YAClC,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,kBAAkB,CAAC,WAAwB;QAChD,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,CAC9D,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,KAAK,CAAC,CACvC,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,qBAAqB,CAChC,WAAwB,EACxB,SAAiB;QAEjB,MAAM,kBAAkB,GACtB,MAAM,WAAW,CAAC,gCAAgC,CAAC,SAAS,CAAC,CAAC;QAEhE,OAAO,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC,CAAC;IAClD,CAAC;IAEM,KAAK,CAAC,eAAe,CAC1B,UAA8B;QAE9B,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YACtB,MAAM,KAAK,CACT,8DAA8D,CAC/D,CAAC;SACH;QACD,MAAM,kBAAkB,GACtB,MAAM,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAClC,IAAI,CAAC,YAAY,EACjB,UAAU,CAAC,kBAAkB,EAC7B;YACE,QAAQ,EAAE,MAAM;SACjB,CACF,CAAC;QACJ,MAAM,iBAAiB,GAAG,MAAM,kBAAkB,CAAC,IAAI,EAAE,CAAC;QAE1D,OAAO,iBAAiB,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;IACxC,CAAC;IAEM,KAAK;QACV,OAAO,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;IACxC,CAAC;CACF;AAMD,iDAAiD;AACjD,MAAM,WAAW,GAAG,CAAC,CAAC;AACtB,MAAM,WAAW,GAAG,IAAI,CAAC;AAEzB,KAAK,UAAU,WAAW,CACxB,QAAyB,EACzB,OAA2B;IAE3B,MAAM,EACJ,SAAS,EACT,aAAa,EACb,UAAU,GAAG,WAAW,EACxB,WAAW,GAAG,WAAW,GAC1B,GAAG,OAAO,CAAC;IAEZ,IAAI,CAAC,SAAS,EAAE;QACd,OAAO,QAAQ,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;KAC5C;IAED,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE;QAC7B,MAAM,KAAK,CAAC,6CAA6C,CAAC,CAAC;KAC5D;IAED,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC;IAEhE,IAAI,OAAO,GAAG,SAAS,GAAG,UAAU,EAAE;QACpC,OAAO,QAAQ,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;KAC5C;IAED,MAAM,MAAM,GAAqB,EAAE,CAAC;IACpC,MAAM,MAAM,GAAG,aAAa,CAAC,SAAS,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;IAE7D,KAAK,MAAM,OAAO,IAAI,KAAK,CAAmB,MAAM,EAAE,WAAW,CAAC,EAAE;QAClE,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAC7C,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,aAAa,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CACnE,CAAC;QACF,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAClD,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;KAC9C;IAED,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;AAClC,CAAC;AAED,SAAS,aAAa,CACpB,IAAY,EACZ,EAAU,EACV,IAAY;IAEZ,MAAM,MAAM,GAAG,EAAE,CAAC;IAElB,IAAI,IAAI,GAAG,IAAI,CAAC;IAChB,OAAO,IAAI,GAAG,EAAE,EAAE;QAChB,MAAM,KAAK,GAAG,IAAI,GAAG,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QAElD,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,CAAqB,CAAC,CAAC;QAE/C,IAAI,GAAG,KAAK,CAAC;KACd;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,QAAQ,CAAC,CAAC,KAAK,CAAI,KAAU,EAAE,IAAY;IACzC,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,IAAI,GAAG,IAAI,CAAC;IAEhB,OAAO,IAAI,GAAG,KAAK,CAAC,MAAM,EAAE;QAC1B,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAEzC,MAAM,OAAO,CAAC;QAEd,KAAK,GAAG,IAAI,CAAC;QACb,IAAI,IAAI,IAAI,CAAC;KACd;AACH,CAAC;AAED,SAAS,YAAY,CAAI,OAAmB,EAAE,YAAe;IAC3D,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;QAC3B,OAAO,CAAC,KAAK,CAAC,mCAAmC,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;QACjE,OAAO,YAAY,CAAC;IACtB,CAAC,CAAC,CAAC;AACL,CAAC"}
|
package/package.json
CHANGED
package/src/constants.ts
CHANGED
@@ -1,14 +1,68 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
"
|
4
|
-
"
|
5
|
-
"
|
6
|
-
"
|
1
|
+
// ref https://github.com/waku-org/waku-rln-contract/blob/19fded82bca07e7b535b429dc507cfb83f10dfcf/deployments/sepolia/WakuRlnRegistry_Implementation.json#L3
|
2
|
+
export const RLN_REGISTRY_ABI = [
|
3
|
+
"error IncompatibleStorage()",
|
4
|
+
"error IncompatibleStorageIndex()",
|
5
|
+
"error NoStorageContractAvailable()",
|
6
|
+
"error StorageAlreadyExists(address storageAddress)",
|
7
|
+
"event AdminChanged(address previousAdmin, address newAdmin)",
|
8
|
+
"event BeaconUpgraded(address indexed beacon)",
|
9
|
+
"event Initialized(uint8 version)",
|
10
|
+
"event NewStorageContract(uint16 index, address storageAddress)",
|
11
|
+
"event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)",
|
12
|
+
"event Upgraded(address indexed implementation)",
|
13
|
+
"function forceProgress()",
|
14
|
+
"function initialize(address _poseidonHasher)",
|
15
|
+
"function newStorage()",
|
16
|
+
"function nextStorageIndex() view returns (uint16)",
|
17
|
+
"function owner() view returns (address)",
|
18
|
+
"function poseidonHasher() view returns (address)",
|
19
|
+
"function proxiableUUID() view returns (bytes32)",
|
20
|
+
"function register(uint16 storageIndex, uint256 commitment)",
|
21
|
+
"function register(uint256[] commitments)",
|
22
|
+
"function register(uint16 storageIndex, uint256[] commitments)",
|
23
|
+
"function registerStorage(address storageAddress)",
|
24
|
+
"function renounceOwnership()",
|
25
|
+
"function storages(uint16) view returns (address)",
|
26
|
+
"function transferOwnership(address newOwner)",
|
27
|
+
"function upgradeTo(address newImplementation)",
|
28
|
+
"function upgradeToAndCall(address newImplementation, bytes data) payable",
|
29
|
+
"function usingStorageIndex() view returns (uint16)",
|
30
|
+
];
|
31
|
+
|
32
|
+
// ref https://github.com/waku-org/waku-rln-contract/blob/19fded82bca07e7b535b429dc507cfb83f10dfcf/deployments/sepolia/WakuRlnStorage_0.json#L3
|
33
|
+
export const RLN_STORAGE_ABI = [
|
34
|
+
"constructor(address _poseidonHasher, uint16 _contractIndex)",
|
35
|
+
"error DuplicateIdCommitment()",
|
36
|
+
"error FullTree()",
|
37
|
+
"error InvalidIdCommitment(uint256 idCommitment)",
|
38
|
+
"error NotImplemented()",
|
39
|
+
"event MemberRegistered(uint256 idCommitment, uint256 index)",
|
40
|
+
"event MemberWithdrawn(uint256 idCommitment, uint256 index)",
|
41
|
+
"event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)",
|
42
|
+
"function DEPTH() view returns (uint256)",
|
43
|
+
"function MEMBERSHIP_DEPOSIT() view returns (uint256)",
|
44
|
+
"function SET_SIZE() view returns (uint256)",
|
45
|
+
"function contractIndex() view returns (uint16)",
|
46
|
+
"function deployedBlockNumber() view returns (uint32)",
|
47
|
+
"function idCommitmentIndex() view returns (uint256)",
|
48
|
+
"function isValidCommitment(uint256 idCommitment) view returns (bool)",
|
49
|
+
"function memberExists(uint256) view returns (bool)",
|
50
|
+
"function members(uint256) view returns (uint256)",
|
51
|
+
"function owner() view returns (address)",
|
52
|
+
"function poseidonHasher() view returns (address)",
|
53
|
+
"function register(uint256[] idCommitments)",
|
54
|
+
"function register(uint256 idCommitment) payable",
|
55
|
+
"function renounceOwnership()",
|
56
|
+
"function slash(uint256 idCommitment, address receiver, uint256[8] proof) pure",
|
57
|
+
"function stakedAmounts(uint256) view returns (uint256)",
|
58
|
+
"function transferOwnership(address newOwner)",
|
59
|
+
"function verifier() view returns (address)",
|
60
|
+
"function withdraw() pure",
|
61
|
+
"function withdrawalBalance(address) view returns (uint256)",
|
7
62
|
];
|
8
63
|
|
9
64
|
export const SEPOLIA_CONTRACT = {
|
10
65
|
chainId: 11155111,
|
11
|
-
|
12
|
-
|
13
|
-
abi: RLN_ABI,
|
66
|
+
address: "0xF1935b338321013f11068abCafC548A7B0db732C",
|
67
|
+
abi: RLN_REGISTRY_ABI,
|
14
68
|
};
|
package/src/index.ts
CHANGED
@@ -1,5 +1,9 @@
|
|
1
1
|
import { RLNDecoder, RLNEncoder } from "./codec.js";
|
2
|
-
import {
|
2
|
+
import {
|
3
|
+
RLN_REGISTRY_ABI,
|
4
|
+
RLN_STORAGE_ABI,
|
5
|
+
SEPOLIA_CONTRACT,
|
6
|
+
} from "./constants.js";
|
3
7
|
import { Keystore } from "./keystore/index.js";
|
4
8
|
import {
|
5
9
|
IdentityCredential,
|
@@ -29,6 +33,7 @@ export {
|
|
29
33
|
RLNDecoder,
|
30
34
|
MerkleRootTracker,
|
31
35
|
RLNContract,
|
32
|
-
|
36
|
+
RLN_STORAGE_ABI,
|
37
|
+
RLN_REGISTRY_ABI,
|
33
38
|
SEPOLIA_CONTRACT,
|
34
39
|
};
|
package/src/rln_contract.ts
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
import { ethers } from "ethers";
|
2
2
|
|
3
|
-
import {
|
3
|
+
import { RLN_REGISTRY_ABI, RLN_STORAGE_ABI } from "./constants.js";
|
4
4
|
import { IdentityCredential, RLNInstance } from "./rln.js";
|
5
5
|
import { MerkleRootTracker } from "./root_tracker.js";
|
6
6
|
|
@@ -9,9 +9,11 @@ type Member = {
|
|
9
9
|
index: number;
|
10
10
|
};
|
11
11
|
|
12
|
+
type Provider = ethers.Signer | ethers.providers.Provider;
|
13
|
+
|
12
14
|
type ContractOptions = {
|
13
15
|
address: string;
|
14
|
-
provider:
|
16
|
+
provider: Provider;
|
15
17
|
};
|
16
18
|
|
17
19
|
type FetchMembersOptions = {
|
@@ -21,10 +23,14 @@ type FetchMembersOptions = {
|
|
21
23
|
};
|
22
24
|
|
23
25
|
export class RLNContract {
|
24
|
-
private
|
25
|
-
private membersFilter: ethers.EventFilter;
|
26
|
+
private registryContract: ethers.Contract;
|
26
27
|
private merkleRootTracker: MerkleRootTracker;
|
27
28
|
|
29
|
+
private deployBlock: undefined | number;
|
30
|
+
private storageIndex: undefined | number;
|
31
|
+
private storageContract: undefined | ethers.Contract;
|
32
|
+
private _membersFilter: undefined | ethers.EventFilter;
|
33
|
+
|
28
34
|
private _members: Member[] = [];
|
29
35
|
|
30
36
|
public static async init(
|
@@ -33,6 +39,7 @@ export class RLNContract {
|
|
33
39
|
): Promise<RLNContract> {
|
34
40
|
const rlnContract = new RLNContract(rlnInstance, options);
|
35
41
|
|
42
|
+
await rlnContract.initStorageContract(options.provider);
|
36
43
|
await rlnContract.fetchMembers(rlnInstance);
|
37
44
|
rlnContract.subscribeToMembers(rlnInstance);
|
38
45
|
|
@@ -45,24 +52,53 @@ export class RLNContract {
|
|
45
52
|
) {
|
46
53
|
const initialRoot = rlnInstance.getMerkleRoot();
|
47
54
|
|
48
|
-
this.
|
55
|
+
this.registryContract = new ethers.Contract(
|
56
|
+
address,
|
57
|
+
RLN_REGISTRY_ABI,
|
58
|
+
provider
|
59
|
+
);
|
49
60
|
this.merkleRootTracker = new MerkleRootTracker(5, initialRoot);
|
50
|
-
|
61
|
+
}
|
62
|
+
|
63
|
+
private async initStorageContract(provider: Provider): Promise<void> {
|
64
|
+
const index = await this.registryContract.usingStorageIndex();
|
65
|
+
const address = await this.registryContract.storages(index);
|
66
|
+
|
67
|
+
this.storageIndex = index;
|
68
|
+
this.storageContract = new ethers.Contract(
|
69
|
+
address,
|
70
|
+
RLN_STORAGE_ABI,
|
71
|
+
provider
|
72
|
+
);
|
73
|
+
this._membersFilter = this.storageContract.filters.MemberRegistered();
|
74
|
+
|
75
|
+
this.deployBlock = await this.storageContract.deployedBlockNumber();
|
51
76
|
}
|
52
77
|
|
53
78
|
public get contract(): ethers.Contract {
|
54
|
-
|
79
|
+
if (!this.storageContract) {
|
80
|
+
throw Error("Storage contract was not initialized.");
|
81
|
+
}
|
82
|
+
return this.storageContract as ethers.Contract;
|
55
83
|
}
|
56
84
|
|
57
85
|
public get members(): Member[] {
|
58
86
|
return this._members;
|
59
87
|
}
|
60
88
|
|
89
|
+
private get membersFilter(): ethers.EventFilter {
|
90
|
+
if (!this._membersFilter) {
|
91
|
+
throw Error("Members filter was not initialized.");
|
92
|
+
}
|
93
|
+
return this._membersFilter as ethers.EventFilter;
|
94
|
+
}
|
95
|
+
|
61
96
|
public async fetchMembers(
|
62
97
|
rlnInstance: RLNInstance,
|
63
98
|
options: FetchMembersOptions = {}
|
64
99
|
): Promise<void> {
|
65
100
|
const registeredMemberEvents = await queryFilter(this.contract, {
|
101
|
+
fromBlock: this.deployBlock,
|
66
102
|
...options,
|
67
103
|
membersFilter: this.membersFilter,
|
68
104
|
});
|
@@ -164,12 +200,19 @@ export class RLNContract {
|
|
164
200
|
public async registerWithKey(
|
165
201
|
credential: IdentityCredential
|
166
202
|
): Promise<ethers.Event | undefined> {
|
167
|
-
|
168
|
-
|
203
|
+
if (!this.storageIndex) {
|
204
|
+
throw Error(
|
205
|
+
"Cannot register credential, no storage contract index found."
|
206
|
+
);
|
207
|
+
}
|
169
208
|
const txRegisterResponse: ethers.ContractTransaction =
|
170
|
-
await this.
|
171
|
-
|
172
|
-
|
209
|
+
await this.registryContract.register(
|
210
|
+
this.storageIndex,
|
211
|
+
credential.IDCommitmentBigInt,
|
212
|
+
{
|
213
|
+
gasLimit: 100000,
|
214
|
+
}
|
215
|
+
);
|
173
216
|
const txRegisterReceipt = await txRegisterResponse.wait();
|
174
217
|
|
175
218
|
return txRegisterReceipt?.events?.[0];
|