@waku/rln 0.1.1-8928376 → 0.1.1-fa49e29
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 +58 -32
- package/dist/.tsbuildinfo +1 -1
- package/dist/constants.js +1 -1
- package/dist/keystore/keystore.d.ts +1 -0
- package/dist/keystore/keystore.js +16 -5
- package/dist/keystore/keystore.js.map +1 -1
- package/dist/rln_contract.d.ts +12 -8
- package/dist/rln_contract.js +41 -26
- package/dist/rln_contract.js.map +1 -1
- package/package.json +1 -1
- package/src/constants.ts +1 -1
- package/src/rln_contract.ts +70 -35
package/bundle/index.js
CHANGED
@@ -2064,7 +2064,7 @@ const RLN_STORAGE_ABI = [
|
|
2064
2064
|
];
|
2065
2065
|
const SEPOLIA_CONTRACT = {
|
2066
2066
|
chainId: 11155111,
|
2067
|
-
address: "
|
2067
|
+
address: "0xF471d71E9b1455bBF4b85d475afb9BB0954A29c4",
|
2068
2068
|
abi: RLN_REGISTRY_ABI,
|
2069
2069
|
};
|
2070
2070
|
|
@@ -24528,11 +24528,11 @@ class Keystore {
|
|
24528
24528
|
// TODO: add runtime validation of nwaku credentials
|
24529
24529
|
return {
|
24530
24530
|
identity: {
|
24531
|
-
IDCommitment: _.get(obj, "identityCredential.idCommitment"),
|
24532
|
-
IDTrapdoor: _.get(obj, "identityCredential.idTrapdoor"),
|
24533
|
-
IDNullifier: _.get(obj, "identityCredential.idNullifier"),
|
24534
|
-
IDCommitmentBigInt: buildBigIntFromUint8Array(
|
24535
|
-
IDSecretHash: _.get(obj, "identityCredential.idSecretHash"),
|
24531
|
+
IDCommitment: Keystore.fromArraylikeToBytes(_.get(obj, "identityCredential.idCommitment", [])),
|
24532
|
+
IDTrapdoor: Keystore.fromArraylikeToBytes(_.get(obj, "identityCredential.idTrapdoor", [])),
|
24533
|
+
IDNullifier: Keystore.fromArraylikeToBytes(_.get(obj, "identityCredential.idNullifier", [])),
|
24534
|
+
IDCommitmentBigInt: buildBigIntFromUint8Array(Keystore.fromArraylikeToBytes(_.get(obj, "identityCredential.idCommitment", []))),
|
24535
|
+
IDSecretHash: Keystore.fromArraylikeToBytes(_.get(obj, "identityCredential.idSecretHash", [])),
|
24536
24536
|
},
|
24537
24537
|
membership: {
|
24538
24538
|
treeIndex: _.get(obj, "treeIndex"),
|
@@ -24546,6 +24546,17 @@ class Keystore {
|
|
24546
24546
|
return null;
|
24547
24547
|
}
|
24548
24548
|
}
|
24549
|
+
static fromArraylikeToBytes(obj) {
|
24550
|
+
const bytes = [];
|
24551
|
+
let index = 0;
|
24552
|
+
let lastElement = obj[index];
|
24553
|
+
while (lastElement !== undefined) {
|
24554
|
+
bytes.push(lastElement);
|
24555
|
+
index += 1;
|
24556
|
+
lastElement = obj[index];
|
24557
|
+
}
|
24558
|
+
return new Uint8Array(bytes);
|
24559
|
+
}
|
24549
24560
|
// follows nwaku implementation
|
24550
24561
|
// https://github.com/waku-org/nwaku/blob/f05528d4be3d3c876a8b07f9bb7dfaae8aa8ec6e/waku/waku_keystore/protocol_types.nim#L111
|
24551
24562
|
static computeMembershipHash(info) {
|
@@ -49745,10 +49756,10 @@ class MerkleRootTracker {
|
|
49745
49756
|
}
|
49746
49757
|
|
49747
49758
|
class RLNContract {
|
49748
|
-
constructor(rlnInstance, {
|
49749
|
-
this._members =
|
49759
|
+
constructor(rlnInstance, { registryAddress, provider }) {
|
49760
|
+
this._members = new Map();
|
49750
49761
|
const initialRoot = rlnInstance.getMerkleRoot();
|
49751
|
-
this.registryContract = new Contract(
|
49762
|
+
this.registryContract = new Contract(registryAddress, RLN_REGISTRY_ABI, provider);
|
49752
49763
|
this.merkleRootTracker = new MerkleRootTracker(5, initialRoot);
|
49753
49764
|
}
|
49754
49765
|
static async init(rlnInstance, options) {
|
@@ -49758,22 +49769,28 @@ class RLNContract {
|
|
49758
49769
|
rlnContract.subscribeToMembers(rlnInstance);
|
49759
49770
|
return rlnContract;
|
49760
49771
|
}
|
49761
|
-
async initStorageContract(provider) {
|
49762
|
-
const
|
49763
|
-
|
49764
|
-
|
49765
|
-
|
49772
|
+
async initStorageContract(provider, options = {}) {
|
49773
|
+
const storageIndex = options?.storageIndex
|
49774
|
+
? options.storageIndex
|
49775
|
+
: await this.registryContract.usingStorageIndex();
|
49776
|
+
const storageAddress = await this.registryContract.storages(storageIndex);
|
49777
|
+
if (!storageAddress || storageAddress === AddressZero) {
|
49778
|
+
throw Error("No RLN Storage initialized on registry contract.");
|
49779
|
+
}
|
49780
|
+
this.storageIndex = storageIndex;
|
49781
|
+
this.storageContract = new Contract(storageAddress, RLN_STORAGE_ABI, provider);
|
49766
49782
|
this._membersFilter = this.storageContract.filters.MemberRegistered();
|
49767
49783
|
this.deployBlock = await this.storageContract.deployedBlockNumber();
|
49768
49784
|
}
|
49769
49785
|
get contract() {
|
49770
49786
|
if (!this.storageContract) {
|
49771
|
-
throw Error("Storage contract was not initialized
|
49787
|
+
throw Error("Storage contract was not initialized");
|
49772
49788
|
}
|
49773
49789
|
return this.storageContract;
|
49774
49790
|
}
|
49775
49791
|
get members() {
|
49776
|
-
|
49792
|
+
const sortedMembers = Array.from(this._members.values()).sort((left, right) => left.index.toNumber() - right.index.toNumber());
|
49793
|
+
return sortedMembers;
|
49777
49794
|
}
|
49778
49795
|
get membersFilter() {
|
49779
49796
|
if (!this._membersFilter) {
|
@@ -49800,11 +49817,11 @@ class RLNContract {
|
|
49800
49817
|
const index = evt.args.index;
|
49801
49818
|
const toRemoveVal = toRemoveTable.get(evt.blockNumber);
|
49802
49819
|
if (toRemoveVal != undefined) {
|
49803
|
-
toRemoveVal.push(index);
|
49820
|
+
toRemoveVal.push(index.toNumber());
|
49804
49821
|
toRemoveTable.set(evt.blockNumber, toRemoveVal);
|
49805
49822
|
}
|
49806
49823
|
else {
|
49807
|
-
toRemoveTable.set(evt.blockNumber, [index]);
|
49824
|
+
toRemoveTable.set(evt.blockNumber, [index.toNumber()]);
|
49808
49825
|
}
|
49809
49826
|
}
|
49810
49827
|
else {
|
@@ -49822,14 +49839,17 @@ class RLNContract {
|
|
49822
49839
|
insertMembers(rlnInstance, toInsert) {
|
49823
49840
|
toInsert.forEach((events, blockNumber) => {
|
49824
49841
|
events.forEach((evt) => {
|
49825
|
-
|
49842
|
+
const _idCommitment = evt?.args?.idCommitment;
|
49843
|
+
const index = evt?.args?.index;
|
49844
|
+
if (!_idCommitment || !index) {
|
49826
49845
|
return;
|
49827
49846
|
}
|
49828
|
-
const
|
49829
|
-
const index = evt.args.index;
|
49830
|
-
const idCommitment = zeroPad(arrayify(pubkey), 32);
|
49847
|
+
const idCommitment = zeroPad(arrayify(_idCommitment), 32);
|
49831
49848
|
rlnInstance.insertMember(idCommitment);
|
49832
|
-
this.
|
49849
|
+
this._members.set(index.toNumber(), {
|
49850
|
+
index,
|
49851
|
+
idCommitment: _idCommitment?._hex || hexlify(idCommitment),
|
49852
|
+
});
|
49833
49853
|
});
|
49834
49854
|
const currentRoot = rlnInstance.getMerkleRoot();
|
49835
49855
|
this.merkleRootTracker.pushRoot(blockNumber, currentRoot);
|
@@ -49839,9 +49859,8 @@ class RLNContract {
|
|
49839
49859
|
const removeDescending = new Map([...toRemove].sort().reverse());
|
49840
49860
|
removeDescending.forEach((indexes, blockNumber) => {
|
49841
49861
|
indexes.forEach((index) => {
|
49842
|
-
|
49843
|
-
|
49844
|
-
this.members.splice(idx, 1);
|
49862
|
+
if (this._members.has(index)) {
|
49863
|
+
this._members.delete(index);
|
49845
49864
|
}
|
49846
49865
|
rlnInstance.deleteMember(index);
|
49847
49866
|
});
|
@@ -49849,21 +49868,28 @@ class RLNContract {
|
|
49849
49868
|
});
|
49850
49869
|
}
|
49851
49870
|
subscribeToMembers(rlnInstance) {
|
49852
|
-
this.contract.on(this.membersFilter, (_pubkey, _index, event) => this.processEvents(rlnInstance, event));
|
49871
|
+
this.contract.on(this.membersFilter, (_pubkey, _index, event) => this.processEvents(rlnInstance, [event]));
|
49853
49872
|
}
|
49854
49873
|
async registerWithSignature(rlnInstance, signature) {
|
49855
49874
|
const identityCredential = await rlnInstance.generateSeededIdentityCredential(signature);
|
49856
49875
|
return this.registerWithKey(identityCredential);
|
49857
49876
|
}
|
49858
49877
|
async registerWithKey(credential) {
|
49859
|
-
if (
|
49878
|
+
if (this.storageIndex === undefined) {
|
49860
49879
|
throw Error("Cannot register credential, no storage contract index found.");
|
49861
49880
|
}
|
49862
|
-
const txRegisterResponse = await this.registryContract
|
49863
|
-
gasLimit: 100000,
|
49864
|
-
});
|
49881
|
+
const txRegisterResponse = await this.registryContract["register(uint16,uint256)"](this.storageIndex, credential.IDCommitmentBigInt, { gasLimit: 100000 });
|
49865
49882
|
const txRegisterReceipt = await txRegisterResponse.wait();
|
49866
|
-
|
49883
|
+
// assumption: register(uint16,uint256) emits one event
|
49884
|
+
const memberRegistered = txRegisterReceipt?.events?.[0];
|
49885
|
+
if (!memberRegistered) {
|
49886
|
+
return undefined;
|
49887
|
+
}
|
49888
|
+
const decodedData = this.contract.interface.decodeEventLog("MemberRegistered", memberRegistered.data);
|
49889
|
+
return {
|
49890
|
+
idCommitment: decodedData.idCommitment,
|
49891
|
+
index: decodedData.index,
|
49892
|
+
};
|
49867
49893
|
}
|
49868
49894
|
roots() {
|
49869
49895
|
return this.merkleRootTracker.roots();
|
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":"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"}
|
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":"2f47d3a283b1ebe2e5bf3092e22f62081ca673393b22c511e35f904856b5fc36","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":"8ffbb16c130c319c1cf99202fc4ebe84546d5ecd24301a36f9a802df282bef04","signature":"d92a33486f3e37df2765191a56e562f55eec4bf53b3f9a72546d6537d3086616","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":"1d6253296980e097fe8c50f894b7848d9423ea15f3a31d7f0c54afa18b6c7f47","signature":"0374f9245b26bb29531136ac4329487a6ce3721022a3114e4cafb2d72a81b0b1","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.js
CHANGED
@@ -61,7 +61,7 @@ export const RLN_STORAGE_ABI = [
|
|
61
61
|
];
|
62
62
|
export const SEPOLIA_CONTRACT = {
|
63
63
|
chainId: 11155111,
|
64
|
-
address: "
|
64
|
+
address: "0xF471d71E9b1455bBF4b85d475afb9BB0954A29c4",
|
65
65
|
abi: RLN_REGISTRY_ABI,
|
66
66
|
};
|
67
67
|
//# sourceMappingURL=constants.js.map
|
@@ -43,6 +43,7 @@ export declare class Keystore {
|
|
43
43
|
private static fromCredentialToEip;
|
44
44
|
private static fromEipToCredential;
|
45
45
|
private static fromBytesToIdentity;
|
46
|
+
private static fromArraylikeToBytes;
|
46
47
|
private static computeMembershipHash;
|
47
48
|
private static fromIdentityToBytes;
|
48
49
|
}
|
@@ -138,11 +138,11 @@ export class Keystore {
|
|
138
138
|
// TODO: add runtime validation of nwaku credentials
|
139
139
|
return {
|
140
140
|
identity: {
|
141
|
-
IDCommitment: _.get(obj, "identityCredential.idCommitment"),
|
142
|
-
IDTrapdoor: _.get(obj, "identityCredential.idTrapdoor"),
|
143
|
-
IDNullifier: _.get(obj, "identityCredential.idNullifier"),
|
144
|
-
IDCommitmentBigInt: buildBigIntFromUint8Array(
|
145
|
-
IDSecretHash: _.get(obj, "identityCredential.idSecretHash"),
|
141
|
+
IDCommitment: Keystore.fromArraylikeToBytes(_.get(obj, "identityCredential.idCommitment", [])),
|
142
|
+
IDTrapdoor: Keystore.fromArraylikeToBytes(_.get(obj, "identityCredential.idTrapdoor", [])),
|
143
|
+
IDNullifier: Keystore.fromArraylikeToBytes(_.get(obj, "identityCredential.idNullifier", [])),
|
144
|
+
IDCommitmentBigInt: buildBigIntFromUint8Array(Keystore.fromArraylikeToBytes(_.get(obj, "identityCredential.idCommitment", []))),
|
145
|
+
IDSecretHash: Keystore.fromArraylikeToBytes(_.get(obj, "identityCredential.idSecretHash", [])),
|
146
146
|
},
|
147
147
|
membership: {
|
148
148
|
treeIndex: _.get(obj, "treeIndex"),
|
@@ -156,6 +156,17 @@ export class Keystore {
|
|
156
156
|
return null;
|
157
157
|
}
|
158
158
|
}
|
159
|
+
static fromArraylikeToBytes(obj) {
|
160
|
+
const bytes = [];
|
161
|
+
let index = 0;
|
162
|
+
let lastElement = obj[index];
|
163
|
+
while (lastElement !== undefined) {
|
164
|
+
bytes.push(lastElement);
|
165
|
+
index += 1;
|
166
|
+
lastElement = obj[index];
|
167
|
+
}
|
168
|
+
return new Uint8Array(bytes);
|
169
|
+
}
|
159
170
|
// follows nwaku implementation
|
160
171
|
// https://github.com/waku-org/nwaku/blob/f05528d4be3d3c876a8b07f9bb7dfaae8aa8ec6e/waku/waku_keystore/protocol_types.nim#L111
|
161
172
|
static computeMembershipHash(info) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"keystore.js","sourceRoot":"","sources":["../../src/keystore/keystore.ts"],"names":[],"mappings":"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
|
1
|
+
{"version":3,"file":"keystore.js","sourceRoot":"","sources":["../../src/keystore/keystore.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,MAAM,IAAI,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AACtD,OAAO,EACL,UAAU,EACV,WAAW,EACX,WAAW,GACZ,MAAM,6BAA6B,CAAC;AACrC,OAAO,CAAC,MAAM,QAAQ,CAAC;AACvB,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AAEpC,OAAO,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAG7D,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AA6C3E,MAAM,OAAO,QAAQ;IAGnB,YAAoB,OAA8C;QAChE,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,CACvB;YACE,WAAW,EAAE,gBAAgB;YAC7B,aAAa,EAAE,mBAAmB;YAClC,OAAO,EAAE,KAAK;YACd,WAAW,EAAE,EAAE;SAChB,EACD,OAAO,CACR,CAAC;IACJ,CAAC;IAEM,MAAM,CAAC,MAAM,CAAC,UAAiC,EAAE;QACtD,OAAO,IAAI,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC/B,CAAC;IAEM,MAAM,CAAC,UAAU,CAAC,GAAW;QAClC,IAAI;YACF,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAE5B,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE;gBACpC,MAAM,KAAK,CAAC,uDAAuD,CAAC,CAAC;aACtE;YAED,OAAO,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC;SAC1B;QAAC,OAAO,GAAG,EAAE;YACZ,OAAO,CAAC,KAAK,CAAC,qCAAqC,EAAE,GAAG,CAAC,CAAC;YAC1D,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IAEM,MAAM,CAAC,UAAU,CAAC,GAAkB;QACzC,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE;YACpC,MAAM,KAAK,CAAC,uDAAuD,CAAC,CAAC;SACtE;QAED,OAAO,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IAEM,KAAK,CAAC,aAAa,CACxB,OAAwB,EACxB,QAAkB;QAElB,MAAM,cAAc,GAAmB,QAAQ,CAAC,qBAAqB,CACnE,OAAO,CAAC,UAAU,CACnB,CAAC;QAEF,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,EAAE;YACzC,MAAM,KAAK,CAAC,yCAAyC,CAAC,CAAC;SACxD;QAED,0BAA0B;QAC1B,MAAM,QAAQ,GAAG,YAAY,CAAC;QAC9B,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACvC,MAAM,MAAM,GAAG,QAAQ,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAErD,MAAM,WAAW,GAAG,MAAM,iBAAiB,CACzC,QAAQ,EACR,MAAM,EACN,UAAU,EACV,QAAQ,CACT,CAAC;QACF,2EAA2E;QAC3E,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QAChE,MAAM,eAAe,GAAG,QAAQ,CAAC,mBAAmB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QAE5E,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,GAAG,eAAe,CAAC;QACxD,OAAO,cAAc,CAAC;IACxB,CAAC;IAEM,KAAK,CAAC,cAAc,CACzB,cAA8B,EAC9B,QAAkB;QAElB,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;QAE9D,IAAI,CAAC,eAAe,EAAE;YACpB,OAAO,IAAI,CAAC;SACb;QAED,MAAM,WAAW,GAAG,QAAQ,CAAC,mBAAmB,CAAC,eAAe,CAAC,CAAC;QAClE,MAAM,KAAK,GAAG,MAAM,kBAAkB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QAE9D,OAAO,QAAQ,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAC7C,CAAC;IAEM,gBAAgB,CAAC,IAAoB;QAC1C,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE;YAChC,OAAO;SACR;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IAEM,QAAQ;QACb,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IAEM,QAAQ;QACb,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAEO,MAAM,CAAC,iBAAiB,CAAC,GAAY;QAC3C,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE;YACzB,OAAO,KAAK,CAAC;SACd;QAED,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,aAAa,EAAE,EAAE,CAAC,CAAC;aACrE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;aAChC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;QAEnB,OAAO,mBAAmB,CAAC;IAC7B,CAAC;IAEO,MAAM,CAAC,mBAAmB,CAChC,UAA2B;QAE3B,MAAM,WAAW,GAAG,UAAU,CAAC,MAAM,CAAC;QACtC,MAAM,SAAS,GAA2B;YACxC,GAAG,EAAE;gBACH,QAAQ,EAAE,WAAW,CAAC,GAAG;gBACzB,MAAM,EAAE,WAAW,CAAC,SAAS;gBAC7B,OAAO,EAAE,EAAE;aACZ;YACD,MAAM,EAAE;gBACN,QAAQ,EAAE,WAAW,CAAC,MAAM;gBAC5B,MAAM,EAAE,WAAW,CAAC,YAAY;gBAChC,OAAO,EAAE,WAAW,CAAC,UAAU;aAChC;YACD,QAAQ,EAAE;gBACR,+CAA+C;gBAC/C,2BAA2B;gBAC3B,sHAAsH;gBACtH,QAAQ,EAAE,QAAQ;gBAClB,MAAM,EAAE,EAAE;gBACV,OAAO,EAAE,WAAW,CAAC,GAAG;aACzB;SACF,CAAC;QAEF,OAAO;YACL,OAAO,EAAE,CAAC;YACV,IAAI,EAAE,MAAM,EAAE;YACd,WAAW,EAAE,SAAS;YACtB,IAAI,EAAE,2CAA2C;YACjD,MAAM,EAAE,2CAA2C;YACnD,MAAM,EAAE,SAAS;SAClB,CAAC;IACJ,CAAC;IAEO,MAAM,CAAC,mBAAmB,CAChC,WAAyB,EACzB,QAAuB;QAEvB,MAAM,SAAS,GAAG,WAAW,CAAC,MAAM,CAAC;QACrC,MAAM,MAAM,GAAG,SAAS,CAAC,GAAuB,CAAC;QACjD,OAAO;YACL,MAAM,EAAE;gBACN,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,QAAQ;gBACjC,YAAY,EAAE,SAAS,CAAC,MAAM,CAAC,MAAM;gBACrC,UAAU,EAAE,SAAS,CAAC,MAAM,CAAC,OAAO;gBACpC,GAAG,EAAE,MAAM,CAAC,QAAQ;gBACpB,SAAS,EAAE,MAAM,CAAC,MAAM;gBACxB,gDAAgD;gBAChD,2BAA2B;gBAC3B,sHAAsH;gBACtH,GAAG,EAAE,QAAQ;aACd;SACF,CAAC;IACJ,CAAC;IAEO,MAAM,CAAC,mBAAmB,CAChC,KAAiB;QAEjB,IAAI;YACF,MAAM,GAAG,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;YAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAE5B,oDAAoD;YACpD,OAAO;gBACL,QAAQ,EAAE;oBACR,YAAY,EAAE,QAAQ,CAAC,oBAAoB,CACzC,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,iCAAiC,EAAE,EAAE,CAAC,CAClD;oBACD,UAAU,EAAE,QAAQ,CAAC,oBAAoB,CACvC,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,+BAA+B,EAAE,EAAE,CAAC,CAChD;oBACD,WAAW,EAAE,QAAQ,CAAC,oBAAoB,CACxC,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,gCAAgC,EAAE,EAAE,CAAC,CACjD;oBACD,kBAAkB,EAAE,yBAAyB,CAC3C,QAAQ,CAAC,oBAAoB,CAC3B,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,iCAAiC,EAAE,EAAE,CAAC,CAClD,CACF;oBACD,YAAY,EAAE,QAAQ,CAAC,oBAAoB,CACzC,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,iCAAiC,EAAE,EAAE,CAAC,CAClD;iBACF;gBACD,UAAU,EAAE;oBACV,SAAS,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,WAAW,CAAC;oBAClC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,4BAA4B,CAAC;oBACjD,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,4BAA4B,CAAC;iBAClD;aACF,CAAC;SACH;QAAC,OAAO,GAAG,EAAE;YACZ,OAAO,CAAC,KAAK,CAAC,0CAA0C,EAAE,GAAG,CAAC,CAAC;YAC/D,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IAEO,MAAM,CAAC,oBAAoB,CAAC,GAEnC;QACC,MAAM,KAAK,GAAG,EAAE,CAAC;QAEjB,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,IAAI,WAAW,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;QAE7B,OAAO,WAAW,KAAK,SAAS,EAAE;YAChC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACxB,KAAK,IAAI,CAAC,CAAC;YACX,WAAW,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;SAC1B;QAED,OAAO,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAED,+BAA+B;IAC/B,6HAA6H;IACrH,MAAM,CAAC,qBAAqB,CAAC,IAAoB;QACvD,OAAO,UAAU,CACf,MAAM,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CACvE,CAAC,WAAW,EAAE,CAAC;IAClB,CAAC;IAED,+BAA+B;IAC/B,4HAA4H;IACpH,MAAM,CAAC,mBAAmB,CAAC,OAAwB;QACzD,OAAO,WAAW,CAChB,IAAI,CAAC,SAAS,CAAC;YACb,SAAS,EAAE,OAAO,CAAC,UAAU,CAAC,SAAS;YACvC,kBAAkB,EAAE;gBAClB,YAAY,EAAE,OAAO,CAAC,QAAQ,CAAC,YAAY;gBAC3C,WAAW,EAAE,OAAO,CAAC,QAAQ,CAAC,WAAW;gBACzC,YAAY,EAAE,OAAO,CAAC,QAAQ,CAAC,YAAY;gBAC3C,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,UAAU;aACxC;YACD,kBAAkB,EAAE;gBAClB,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO;gBACnC,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO;aACpC;SACF,CAAC,CACH,CAAC;IACJ,CAAC;CACF"}
|
package/dist/rln_contract.d.ts
CHANGED
@@ -1,14 +1,18 @@
|
|
1
1
|
import { ethers } from "ethers";
|
2
2
|
import { IdentityCredential, RLNInstance } from "./rln.js";
|
3
3
|
declare type Member = {
|
4
|
-
|
5
|
-
index:
|
4
|
+
idCommitment: string;
|
5
|
+
index: ethers.BigNumber;
|
6
6
|
};
|
7
7
|
declare type Provider = ethers.Signer | ethers.providers.Provider;
|
8
|
-
declare type
|
9
|
-
address: string;
|
8
|
+
declare type RLNContractOptions = {
|
10
9
|
provider: Provider;
|
10
|
+
registryAddress: string;
|
11
11
|
};
|
12
|
+
declare type RLNStorageOptions = {
|
13
|
+
storageIndex?: number;
|
14
|
+
};
|
15
|
+
declare type RLNContractInitOptions = RLNContractOptions & RLNStorageOptions;
|
12
16
|
declare type FetchMembersOptions = {
|
13
17
|
fromBlock?: number;
|
14
18
|
fetchRange?: number;
|
@@ -22,8 +26,8 @@ export declare class RLNContract {
|
|
22
26
|
private storageContract;
|
23
27
|
private _membersFilter;
|
24
28
|
private _members;
|
25
|
-
static init(rlnInstance: RLNInstance, options:
|
26
|
-
constructor(rlnInstance: RLNInstance, {
|
29
|
+
static init(rlnInstance: RLNInstance, options: RLNContractInitOptions): Promise<RLNContract>;
|
30
|
+
constructor(rlnInstance: RLNInstance, { registryAddress, provider }: RLNContractOptions);
|
27
31
|
private initStorageContract;
|
28
32
|
get contract(): ethers.Contract;
|
29
33
|
get members(): Member[];
|
@@ -33,8 +37,8 @@ export declare class RLNContract {
|
|
33
37
|
private insertMembers;
|
34
38
|
private removeMembers;
|
35
39
|
subscribeToMembers(rlnInstance: RLNInstance): void;
|
36
|
-
registerWithSignature(rlnInstance: RLNInstance, signature: string): Promise<
|
37
|
-
registerWithKey(credential: IdentityCredential): Promise<
|
40
|
+
registerWithSignature(rlnInstance: RLNInstance, signature: string): Promise<Member | undefined>;
|
41
|
+
registerWithKey(credential: IdentityCredential): Promise<Member | undefined>;
|
38
42
|
roots(): Uint8Array[];
|
39
43
|
}
|
40
44
|
export {};
|
package/dist/rln_contract.js
CHANGED
@@ -2,10 +2,10 @@ import { ethers } from "ethers";
|
|
2
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
|
-
constructor(rlnInstance, {
|
6
|
-
this._members =
|
5
|
+
constructor(rlnInstance, { registryAddress, provider }) {
|
6
|
+
this._members = new Map();
|
7
7
|
const initialRoot = rlnInstance.getMerkleRoot();
|
8
|
-
this.registryContract = new ethers.Contract(
|
8
|
+
this.registryContract = new ethers.Contract(registryAddress, RLN_REGISTRY_ABI, provider);
|
9
9
|
this.merkleRootTracker = new MerkleRootTracker(5, initialRoot);
|
10
10
|
}
|
11
11
|
static async init(rlnInstance, options) {
|
@@ -15,22 +15,28 @@ export class RLNContract {
|
|
15
15
|
rlnContract.subscribeToMembers(rlnInstance);
|
16
16
|
return rlnContract;
|
17
17
|
}
|
18
|
-
async initStorageContract(provider) {
|
19
|
-
const
|
20
|
-
|
21
|
-
|
22
|
-
|
18
|
+
async initStorageContract(provider, options = {}) {
|
19
|
+
const storageIndex = options?.storageIndex
|
20
|
+
? options.storageIndex
|
21
|
+
: await this.registryContract.usingStorageIndex();
|
22
|
+
const storageAddress = await this.registryContract.storages(storageIndex);
|
23
|
+
if (!storageAddress || storageAddress === ethers.constants.AddressZero) {
|
24
|
+
throw Error("No RLN Storage initialized on registry contract.");
|
25
|
+
}
|
26
|
+
this.storageIndex = storageIndex;
|
27
|
+
this.storageContract = new ethers.Contract(storageAddress, RLN_STORAGE_ABI, provider);
|
23
28
|
this._membersFilter = this.storageContract.filters.MemberRegistered();
|
24
29
|
this.deployBlock = await this.storageContract.deployedBlockNumber();
|
25
30
|
}
|
26
31
|
get contract() {
|
27
32
|
if (!this.storageContract) {
|
28
|
-
throw Error("Storage contract was not initialized
|
33
|
+
throw Error("Storage contract was not initialized");
|
29
34
|
}
|
30
35
|
return this.storageContract;
|
31
36
|
}
|
32
37
|
get members() {
|
33
|
-
|
38
|
+
const sortedMembers = Array.from(this._members.values()).sort((left, right) => left.index.toNumber() - right.index.toNumber());
|
39
|
+
return sortedMembers;
|
34
40
|
}
|
35
41
|
get membersFilter() {
|
36
42
|
if (!this._membersFilter) {
|
@@ -57,11 +63,11 @@ export class RLNContract {
|
|
57
63
|
const index = evt.args.index;
|
58
64
|
const toRemoveVal = toRemoveTable.get(evt.blockNumber);
|
59
65
|
if (toRemoveVal != undefined) {
|
60
|
-
toRemoveVal.push(index);
|
66
|
+
toRemoveVal.push(index.toNumber());
|
61
67
|
toRemoveTable.set(evt.blockNumber, toRemoveVal);
|
62
68
|
}
|
63
69
|
else {
|
64
|
-
toRemoveTable.set(evt.blockNumber, [index]);
|
70
|
+
toRemoveTable.set(evt.blockNumber, [index.toNumber()]);
|
65
71
|
}
|
66
72
|
}
|
67
73
|
else {
|
@@ -79,14 +85,17 @@ export class RLNContract {
|
|
79
85
|
insertMembers(rlnInstance, toInsert) {
|
80
86
|
toInsert.forEach((events, blockNumber) => {
|
81
87
|
events.forEach((evt) => {
|
82
|
-
|
88
|
+
const _idCommitment = evt?.args?.idCommitment;
|
89
|
+
const index = evt?.args?.index;
|
90
|
+
if (!_idCommitment || !index) {
|
83
91
|
return;
|
84
92
|
}
|
85
|
-
const
|
86
|
-
const index = evt.args.index;
|
87
|
-
const idCommitment = ethers.utils.zeroPad(ethers.utils.arrayify(pubkey), 32);
|
93
|
+
const idCommitment = ethers.utils.zeroPad(ethers.utils.arrayify(_idCommitment), 32);
|
88
94
|
rlnInstance.insertMember(idCommitment);
|
89
|
-
this.
|
95
|
+
this._members.set(index.toNumber(), {
|
96
|
+
index,
|
97
|
+
idCommitment: _idCommitment?._hex || ethers.utils.hexlify(idCommitment),
|
98
|
+
});
|
90
99
|
});
|
91
100
|
const currentRoot = rlnInstance.getMerkleRoot();
|
92
101
|
this.merkleRootTracker.pushRoot(blockNumber, currentRoot);
|
@@ -96,9 +105,8 @@ export class RLNContract {
|
|
96
105
|
const removeDescending = new Map([...toRemove].sort().reverse());
|
97
106
|
removeDescending.forEach((indexes, blockNumber) => {
|
98
107
|
indexes.forEach((index) => {
|
99
|
-
|
100
|
-
|
101
|
-
this.members.splice(idx, 1);
|
108
|
+
if (this._members.has(index)) {
|
109
|
+
this._members.delete(index);
|
102
110
|
}
|
103
111
|
rlnInstance.deleteMember(index);
|
104
112
|
});
|
@@ -106,21 +114,28 @@ export class RLNContract {
|
|
106
114
|
});
|
107
115
|
}
|
108
116
|
subscribeToMembers(rlnInstance) {
|
109
|
-
this.contract.on(this.membersFilter, (_pubkey, _index, event) => this.processEvents(rlnInstance, event));
|
117
|
+
this.contract.on(this.membersFilter, (_pubkey, _index, event) => this.processEvents(rlnInstance, [event]));
|
110
118
|
}
|
111
119
|
async registerWithSignature(rlnInstance, signature) {
|
112
120
|
const identityCredential = await rlnInstance.generateSeededIdentityCredential(signature);
|
113
121
|
return this.registerWithKey(identityCredential);
|
114
122
|
}
|
115
123
|
async registerWithKey(credential) {
|
116
|
-
if (
|
124
|
+
if (this.storageIndex === undefined) {
|
117
125
|
throw Error("Cannot register credential, no storage contract index found.");
|
118
126
|
}
|
119
|
-
const txRegisterResponse = await this.registryContract
|
120
|
-
gasLimit: 100000,
|
121
|
-
});
|
127
|
+
const txRegisterResponse = await this.registryContract["register(uint16,uint256)"](this.storageIndex, credential.IDCommitmentBigInt, { gasLimit: 100000 });
|
122
128
|
const txRegisterReceipt = await txRegisterResponse.wait();
|
123
|
-
|
129
|
+
// assumption: register(uint16,uint256) emits one event
|
130
|
+
const memberRegistered = txRegisterReceipt?.events?.[0];
|
131
|
+
if (!memberRegistered) {
|
132
|
+
return undefined;
|
133
|
+
}
|
134
|
+
const decodedData = this.contract.interface.decodeEventLog("MemberRegistered", memberRegistered.data);
|
135
|
+
return {
|
136
|
+
idCommitment: decodedData.idCommitment,
|
137
|
+
index: decodedData.index,
|
138
|
+
};
|
124
139
|
}
|
125
140
|
roots() {
|
126
141
|
return this.merkleRootTracker.roots();
|
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,gBAAgB,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;
|
1
|
+
{"version":3,"file":"rln_contract.js","sourceRoot":"","sources":["../src/rln_contract.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/constants.ts
CHANGED
package/src/rln_contract.ts
CHANGED
@@ -5,17 +5,23 @@ import { IdentityCredential, RLNInstance } from "./rln.js";
|
|
5
5
|
import { MerkleRootTracker } from "./root_tracker.js";
|
6
6
|
|
7
7
|
type Member = {
|
8
|
-
|
9
|
-
index:
|
8
|
+
idCommitment: string;
|
9
|
+
index: ethers.BigNumber;
|
10
10
|
};
|
11
11
|
|
12
12
|
type Provider = ethers.Signer | ethers.providers.Provider;
|
13
13
|
|
14
|
-
type
|
15
|
-
address: string;
|
14
|
+
type RLNContractOptions = {
|
16
15
|
provider: Provider;
|
16
|
+
registryAddress: string;
|
17
17
|
};
|
18
18
|
|
19
|
+
type RLNStorageOptions = {
|
20
|
+
storageIndex?: number;
|
21
|
+
};
|
22
|
+
|
23
|
+
type RLNContractInitOptions = RLNContractOptions & RLNStorageOptions;
|
24
|
+
|
19
25
|
type FetchMembersOptions = {
|
20
26
|
fromBlock?: number;
|
21
27
|
fetchRange?: number;
|
@@ -31,11 +37,11 @@ export class RLNContract {
|
|
31
37
|
private storageContract: undefined | ethers.Contract;
|
32
38
|
private _membersFilter: undefined | ethers.EventFilter;
|
33
39
|
|
34
|
-
private _members: Member
|
40
|
+
private _members: Map<number, Member> = new Map();
|
35
41
|
|
36
42
|
public static async init(
|
37
43
|
rlnInstance: RLNInstance,
|
38
|
-
options:
|
44
|
+
options: RLNContractInitOptions
|
39
45
|
): Promise<RLNContract> {
|
40
46
|
const rlnContract = new RLNContract(rlnInstance, options);
|
41
47
|
|
@@ -48,25 +54,34 @@ export class RLNContract {
|
|
48
54
|
|
49
55
|
constructor(
|
50
56
|
rlnInstance: RLNInstance,
|
51
|
-
{
|
57
|
+
{ registryAddress, provider }: RLNContractOptions
|
52
58
|
) {
|
53
59
|
const initialRoot = rlnInstance.getMerkleRoot();
|
54
60
|
|
55
61
|
this.registryContract = new ethers.Contract(
|
56
|
-
|
62
|
+
registryAddress,
|
57
63
|
RLN_REGISTRY_ABI,
|
58
64
|
provider
|
59
65
|
);
|
60
66
|
this.merkleRootTracker = new MerkleRootTracker(5, initialRoot);
|
61
67
|
}
|
62
68
|
|
63
|
-
private async initStorageContract(
|
64
|
-
|
65
|
-
|
69
|
+
private async initStorageContract(
|
70
|
+
provider: Provider,
|
71
|
+
options: RLNStorageOptions = {}
|
72
|
+
): Promise<void> {
|
73
|
+
const storageIndex = options?.storageIndex
|
74
|
+
? options.storageIndex
|
75
|
+
: await this.registryContract.usingStorageIndex();
|
76
|
+
const storageAddress = await this.registryContract.storages(storageIndex);
|
66
77
|
|
67
|
-
|
78
|
+
if (!storageAddress || storageAddress === ethers.constants.AddressZero) {
|
79
|
+
throw Error("No RLN Storage initialized on registry contract.");
|
80
|
+
}
|
81
|
+
|
82
|
+
this.storageIndex = storageIndex;
|
68
83
|
this.storageContract = new ethers.Contract(
|
69
|
-
|
84
|
+
storageAddress,
|
70
85
|
RLN_STORAGE_ABI,
|
71
86
|
provider
|
72
87
|
);
|
@@ -77,13 +92,16 @@ export class RLNContract {
|
|
77
92
|
|
78
93
|
public get contract(): ethers.Contract {
|
79
94
|
if (!this.storageContract) {
|
80
|
-
throw Error("Storage contract was not initialized
|
95
|
+
throw Error("Storage contract was not initialized");
|
81
96
|
}
|
82
97
|
return this.storageContract as ethers.Contract;
|
83
98
|
}
|
84
99
|
|
85
100
|
public get members(): Member[] {
|
86
|
-
|
101
|
+
const sortedMembers = Array.from(this._members.values()).sort(
|
102
|
+
(left, right) => left.index.toNumber() - right.index.toNumber()
|
103
|
+
);
|
104
|
+
return sortedMembers;
|
87
105
|
}
|
88
106
|
|
89
107
|
private get membersFilter(): ethers.EventFilter {
|
@@ -115,13 +133,13 @@ export class RLNContract {
|
|
115
133
|
}
|
116
134
|
|
117
135
|
if (evt.removed) {
|
118
|
-
const index:
|
136
|
+
const index: ethers.BigNumber = evt.args.index;
|
119
137
|
const toRemoveVal = toRemoveTable.get(evt.blockNumber);
|
120
138
|
if (toRemoveVal != undefined) {
|
121
|
-
toRemoveVal.push(index);
|
139
|
+
toRemoveVal.push(index.toNumber());
|
122
140
|
toRemoveTable.set(evt.blockNumber, toRemoveVal);
|
123
141
|
} else {
|
124
|
-
toRemoveTable.set(evt.blockNumber, [index]);
|
142
|
+
toRemoveTable.set(evt.blockNumber, [index.toNumber()]);
|
125
143
|
}
|
126
144
|
} else {
|
127
145
|
let eventsPerBlock = toInsertTable.get(evt.blockNumber);
|
@@ -144,18 +162,23 @@ export class RLNContract {
|
|
144
162
|
): void {
|
145
163
|
toInsert.forEach((events: ethers.Event[], blockNumber: number) => {
|
146
164
|
events.forEach((evt) => {
|
147
|
-
|
165
|
+
const _idCommitment = evt?.args?.idCommitment;
|
166
|
+
const index: ethers.BigNumber = evt?.args?.index;
|
167
|
+
|
168
|
+
if (!_idCommitment || !index) {
|
148
169
|
return;
|
149
170
|
}
|
150
171
|
|
151
|
-
const pubkey = evt.args.pubkey;
|
152
|
-
const index = evt.args.index;
|
153
172
|
const idCommitment = ethers.utils.zeroPad(
|
154
|
-
ethers.utils.arrayify(
|
173
|
+
ethers.utils.arrayify(_idCommitment),
|
155
174
|
32
|
156
175
|
);
|
157
176
|
rlnInstance.insertMember(idCommitment);
|
158
|
-
this.
|
177
|
+
this._members.set(index.toNumber(), {
|
178
|
+
index,
|
179
|
+
idCommitment:
|
180
|
+
_idCommitment?._hex || ethers.utils.hexlify(idCommitment),
|
181
|
+
});
|
159
182
|
});
|
160
183
|
|
161
184
|
const currentRoot = rlnInstance.getMerkleRoot();
|
@@ -170,9 +193,8 @@ export class RLNContract {
|
|
170
193
|
const removeDescending = new Map([...toRemove].sort().reverse());
|
171
194
|
removeDescending.forEach((indexes: number[], blockNumber: number) => {
|
172
195
|
indexes.forEach((index) => {
|
173
|
-
|
174
|
-
|
175
|
-
this.members.splice(idx, 1);
|
196
|
+
if (this._members.has(index)) {
|
197
|
+
this._members.delete(index);
|
176
198
|
}
|
177
199
|
rlnInstance.deleteMember(index);
|
178
200
|
});
|
@@ -183,14 +205,14 @@ export class RLNContract {
|
|
183
205
|
|
184
206
|
public subscribeToMembers(rlnInstance: RLNInstance): void {
|
185
207
|
this.contract.on(this.membersFilter, (_pubkey, _index, event) =>
|
186
|
-
this.processEvents(rlnInstance, event)
|
208
|
+
this.processEvents(rlnInstance, [event])
|
187
209
|
);
|
188
210
|
}
|
189
211
|
|
190
212
|
public async registerWithSignature(
|
191
213
|
rlnInstance: RLNInstance,
|
192
214
|
signature: string
|
193
|
-
): Promise<
|
215
|
+
): Promise<Member | undefined> {
|
194
216
|
const identityCredential =
|
195
217
|
await rlnInstance.generateSeededIdentityCredential(signature);
|
196
218
|
|
@@ -199,23 +221,36 @@ export class RLNContract {
|
|
199
221
|
|
200
222
|
public async registerWithKey(
|
201
223
|
credential: IdentityCredential
|
202
|
-
): Promise<
|
203
|
-
if (
|
224
|
+
): Promise<Member | undefined> {
|
225
|
+
if (this.storageIndex === undefined) {
|
204
226
|
throw Error(
|
205
227
|
"Cannot register credential, no storage contract index found."
|
206
228
|
);
|
207
229
|
}
|
208
230
|
const txRegisterResponse: ethers.ContractTransaction =
|
209
|
-
await this.registryContract
|
231
|
+
await this.registryContract["register(uint16,uint256)"](
|
210
232
|
this.storageIndex,
|
211
233
|
credential.IDCommitmentBigInt,
|
212
|
-
{
|
213
|
-
gasLimit: 100000,
|
214
|
-
}
|
234
|
+
{ gasLimit: 100000 }
|
215
235
|
);
|
216
236
|
const txRegisterReceipt = await txRegisterResponse.wait();
|
217
237
|
|
218
|
-
|
238
|
+
// assumption: register(uint16,uint256) emits one event
|
239
|
+
const memberRegistered = txRegisterReceipt?.events?.[0];
|
240
|
+
|
241
|
+
if (!memberRegistered) {
|
242
|
+
return undefined;
|
243
|
+
}
|
244
|
+
|
245
|
+
const decodedData = this.contract.interface.decodeEventLog(
|
246
|
+
"MemberRegistered",
|
247
|
+
memberRegistered.data
|
248
|
+
);
|
249
|
+
|
250
|
+
return {
|
251
|
+
idCommitment: decodedData.idCommitment,
|
252
|
+
index: decodedData.index,
|
253
|
+
};
|
219
254
|
}
|
220
255
|
|
221
256
|
public roots(): Uint8Array[] {
|