@maci-protocol/testing 0.0.0-ci.f4bc8a6 → 0.0.0-ci.f4e2c46
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/LICENSE +1 -2
- package/build/ts/__tests__/e2e.full.test.d.ts +2 -0
- package/build/ts/__tests__/e2e.full.test.d.ts.map +1 -0
- package/build/ts/__tests__/e2e.full.test.js +844 -0
- package/build/ts/__tests__/e2e.full.test.js.map +1 -0
- package/build/ts/__tests__/e2e.nonQv.test.js +424 -38
- package/build/ts/__tests__/e2e.nonQv.test.js.map +1 -1
- package/build/ts/__tests__/e2e.test.js +269 -280
- package/build/ts/__tests__/e2e.test.js.map +1 -1
- package/build/ts/__tests__/integration.test.js +59 -55
- package/build/ts/__tests__/integration.test.js.map +1 -1
- package/build/ts/__tests__/keyChange.test.js +84 -78
- package/build/ts/__tests__/keyChange.test.js.map +1 -1
- package/build/ts/__tests__/maciKeys.test.d.ts +2 -0
- package/build/ts/__tests__/maciKeys.test.d.ts.map +1 -0
- package/build/ts/__tests__/maciKeys.test.js +78 -0
- package/build/ts/__tests__/maciKeys.test.js.map +1 -0
- package/build/ts/__tests__/unit/joinPoll.test.js +94 -27
- package/build/ts/__tests__/unit/joinPoll.test.js.map +1 -1
- package/build/ts/__tests__/unit/poll.test.js +7 -7
- package/build/ts/__tests__/unit/poll.test.js.map +1 -1
- package/build/ts/__tests__/unit/publish.test.js +13 -10
- package/build/ts/__tests__/unit/publish.test.js.map +1 -1
- package/build/ts/__tests__/unit/signup.test.js +9 -9
- package/build/ts/__tests__/unit/signup.test.js.map +1 -1
- package/build/ts/__tests__/unit/utils.test.js +12 -12
- package/build/ts/__tests__/unit/utils.test.js.map +1 -1
- package/build/ts/constants.d.ts +52 -53
- package/build/ts/constants.d.ts.map +1 -1
- package/build/ts/constants.js +98 -74
- package/build/ts/constants.js.map +1 -1
- package/build/ts/testingClass.d.ts +7 -7
- package/build/ts/testingClass.d.ts.map +1 -1
- package/build/ts/testingClass.js +31 -27
- package/build/ts/testingClass.js.map +1 -1
- package/build/ts/types.d.ts +11 -11
- package/build/ts/types.d.ts.map +1 -1
- package/build/ts/user.d.ts +5 -9
- package/build/ts/user.d.ts.map +1 -1
- package/build/ts/user.js +5 -6
- package/build/ts/user.js.map +1 -1
- package/build/ts/utils.d.ts +3 -3
- package/build/ts/utils.d.ts.map +1 -1
- package/build/ts/utils.js +12 -12
- package/build/ts/utils.js.map +1 -1
- package/build/tsconfig.tsbuildinfo +1 -1
- package/package.json +14 -13
- package/build/ts/__tests__/maci-keys.test.d.ts +0 -2
- package/build/ts/__tests__/maci-keys.test.d.ts.map +0 -1
- package/build/ts/__tests__/maci-keys.test.js +0 -78
- package/build/ts/__tests__/maci-keys.test.js.map +0 -1
package/build/ts/testingClass.js
CHANGED
|
@@ -14,16 +14,16 @@ const user_1 = require("./user");
|
|
|
14
14
|
* It can be used to deploy and initialize the contracts
|
|
15
15
|
*/
|
|
16
16
|
class TestingClass {
|
|
17
|
-
constructor({ pollJoiningZkeyPath, pollJoinedZkeyPath,
|
|
17
|
+
constructor({ pollJoiningZkeyPath, pollJoinedZkeyPath, messageProcessorZkeyPath, voteTallyZkeyPath, pollWasm, pollWitnessGenerator, rapidsnark, }) {
|
|
18
18
|
this.contractsData = {
|
|
19
19
|
initialized: false,
|
|
20
20
|
};
|
|
21
21
|
this.pollJoiningZkeyPath = pollJoiningZkeyPath;
|
|
22
22
|
this.pollJoinedZkeyPath = pollJoinedZkeyPath;
|
|
23
|
-
this.
|
|
24
|
-
this.
|
|
23
|
+
this.messageProcessorZkeyPath = messageProcessorZkeyPath;
|
|
24
|
+
this.voteTallyZkeyPath = voteTallyZkeyPath;
|
|
25
25
|
this.pollWasm = pollWasm;
|
|
26
|
-
this.
|
|
26
|
+
this.pollWitnessGenerator = pollWitnessGenerator;
|
|
27
27
|
this.rapidsnark = rapidsnark;
|
|
28
28
|
}
|
|
29
29
|
static async getInstance(paths) {
|
|
@@ -47,32 +47,36 @@ class TestingClass {
|
|
|
47
47
|
if (this.contractsData.initialized) {
|
|
48
48
|
return;
|
|
49
49
|
}
|
|
50
|
-
const [signer] = await hardhat_1.default.ethers.getSigners();
|
|
50
|
+
const [signer] = (await hardhat_1.default.ethers.getSigners());
|
|
51
51
|
const coordinatorKeypair = new domainobjs_1.Keypair();
|
|
52
52
|
const user = new domainobjs_1.Keypair();
|
|
53
|
-
const {
|
|
53
|
+
const { pollJoiningVerifyingKey, pollJoinedVerifyingKey, processVerifyingKey, tallyVerifyingKey } = await (0, sdk_1.extractAllVerifyingKeys)({
|
|
54
54
|
pollJoiningZkeyPath: this.pollJoiningZkeyPath,
|
|
55
55
|
pollJoinedZkeyPath: this.pollJoinedZkeyPath,
|
|
56
|
-
|
|
57
|
-
|
|
56
|
+
messageProcessorZkeyPath: this.messageProcessorZkeyPath,
|
|
57
|
+
voteTallyZkeyPath: this.voteTallyZkeyPath,
|
|
58
58
|
});
|
|
59
|
-
const
|
|
59
|
+
const verifyingKeysRegistry = await (0, sdk_1.deployVerifyingKeysRegistryContract)({ signer });
|
|
60
60
|
await (0, sdk_1.setVerifyingKeys)({
|
|
61
|
-
|
|
61
|
+
verifyingKeysRegistryAddress: verifyingKeysRegistry,
|
|
62
62
|
stateTreeDepth: constants_1.STATE_TREE_DEPTH,
|
|
63
|
-
|
|
63
|
+
tallyProcessingStateTreeDepth: constants_1.TALLY_PROCESSING_STATE_TREE_DEPTH,
|
|
64
64
|
voteOptionTreeDepth: constants_1.VOTE_OPTION_TREE_DEPTH,
|
|
65
65
|
messageBatchSize: constants_1.MESSAGE_BATCH_SIZE,
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
66
|
+
pollStateTreeDepth: constants_1.POLL_STATE_TREE_DEPTH,
|
|
67
|
+
pollJoiningVerifyingKey: pollJoiningVerifyingKey,
|
|
68
|
+
pollJoinedVerifyingKey: pollJoinedVerifyingKey,
|
|
69
|
+
processMessagesVerifyingKey: processVerifyingKey,
|
|
70
|
+
tallyVotesVerifyingKey: tallyVerifyingKey,
|
|
70
71
|
mode: sdk_1.EMode.NON_QV,
|
|
71
72
|
signer,
|
|
72
73
|
});
|
|
73
|
-
const [signupPolicy] = await (0, sdk_1.deployFreeForAllSignUpPolicy)(signer, true);
|
|
74
|
+
const [signupPolicy, , signupPolicyFactory, signupCheckerFactory] = await (0, sdk_1.deployFreeForAllSignUpPolicy)({}, signer, true);
|
|
74
75
|
const signupPolicyContractAddress = await signupPolicy.getAddress();
|
|
75
|
-
const [pollPolicy] = await (0, sdk_1.deployFreeForAllSignUpPolicy)(
|
|
76
|
+
const [pollPolicy] = await (0, sdk_1.deployFreeForAllSignUpPolicy)({
|
|
77
|
+
policy: signupPolicyFactory,
|
|
78
|
+
checker: signupCheckerFactory,
|
|
79
|
+
}, signer, true);
|
|
76
80
|
const pollPolicyContractAddress = await pollPolicy.getAddress();
|
|
77
81
|
const maciAddresses = await (0, sdk_1.deployMaci)({
|
|
78
82
|
stateTreeDepth: 10,
|
|
@@ -87,10 +91,11 @@ class TestingClass {
|
|
|
87
91
|
const { pollContractAddress } = await (0, sdk_1.deployPoll)({
|
|
88
92
|
pollStartTimestamp: startDate,
|
|
89
93
|
pollEndTimestamp: startDate + 130,
|
|
90
|
-
|
|
94
|
+
tallyProcessingStateTreeDepth: constants_1.TALLY_PROCESSING_STATE_TREE_DEPTH,
|
|
91
95
|
messageBatchSize: constants_1.MESSAGE_BATCH_SIZE,
|
|
96
|
+
stateTreeDepth: constants_1.POLL_STATE_TREE_DEPTH,
|
|
92
97
|
voteOptionTreeDepth: constants_1.VOTE_OPTION_TREE_DEPTH,
|
|
93
|
-
|
|
98
|
+
coordinatorPublicKey: coordinatorKeypair.publicKey,
|
|
94
99
|
mode: sdk_1.EMode.NON_QV,
|
|
95
100
|
relayers: [await signer.getAddress()],
|
|
96
101
|
signer,
|
|
@@ -99,29 +104,28 @@ class TestingClass {
|
|
|
99
104
|
policyContractAddress: pollPolicyContractAddress,
|
|
100
105
|
initialVoiceCreditProxyContractAddress,
|
|
101
106
|
voteOptions: constants_1.DEFAULT_VOTE_OPTIONS,
|
|
102
|
-
|
|
107
|
+
verifyingKeysRegistryContractAddress: verifyingKeysRegistry,
|
|
103
108
|
});
|
|
104
109
|
await (0, sdk_1.signup)({
|
|
105
110
|
maciAddress: maciAddresses.maciContractAddress,
|
|
106
|
-
|
|
111
|
+
maciPublicKey: user.publicKey.serialize(),
|
|
107
112
|
sgData: constants_1.DEFAULT_SG_DATA,
|
|
108
113
|
signer,
|
|
109
114
|
});
|
|
110
|
-
const { pollStateIndex, voiceCredits
|
|
115
|
+
const { pollStateIndex, voiceCredits } = await (0, sdk_1.joinPoll)({
|
|
111
116
|
maciAddress: maciAddresses.maciContractAddress,
|
|
112
117
|
pollId: 0n,
|
|
113
|
-
privateKey: user.
|
|
114
|
-
stateIndex: 1n,
|
|
118
|
+
privateKey: user.privateKey.serialize(),
|
|
115
119
|
pollJoiningZkey: this.pollJoiningZkeyPath,
|
|
116
120
|
pollWasm: this.pollWasm,
|
|
117
|
-
|
|
121
|
+
pollWitnessGenerator: this.pollWitnessGenerator,
|
|
118
122
|
rapidsnark: this.rapidsnark,
|
|
119
123
|
signer,
|
|
120
124
|
useWasm: true,
|
|
121
125
|
sgDataArg: constants_1.DEFAULT_SG_DATA,
|
|
122
126
|
ivcpDataArg: constants_1.DEFAULT_IVCP_DATA,
|
|
123
127
|
});
|
|
124
|
-
const maciState = await (0, sdk_1.
|
|
128
|
+
const maciState = await (0, sdk_1.generateMaciStateFromContract)({
|
|
125
129
|
provider: signer.provider,
|
|
126
130
|
address: maciAddresses.maciContractAddress,
|
|
127
131
|
coordinatorKeypair,
|
|
@@ -130,7 +134,7 @@ class TestingClass {
|
|
|
130
134
|
this.contractsData.maciState = maciState;
|
|
131
135
|
this.contractsData.maciContractAddress = maciAddresses.maciContractAddress;
|
|
132
136
|
this.contractsData.users = [];
|
|
133
|
-
this.contractsData.users.push(new user_1.User(user, [], BigInt(voiceCredits), 0n, BigInt(
|
|
137
|
+
this.contractsData.users.push(new user_1.User(user, [], BigInt(voiceCredits), 0n, BigInt(pollStateIndex)));
|
|
134
138
|
this.contractsData.initialized = true;
|
|
135
139
|
this.contractsData.polls?.push(pollContractAddress);
|
|
136
140
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"testingClass.js","sourceRoot":"","sources":["../../ts/testingClass.ts"],"names":[],"mappings":";;;;;;AAAA,0DAAoD;AACpD,4CAc4B;AAC5B,sDAA8B;
|
|
1
|
+
{"version":3,"file":"testingClass.js","sourceRoot":"","sources":["../../ts/testingClass.ts"],"names":[],"mappings":"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"}
|
package/build/ts/types.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { generateMaciStateFromContract } from "@maci-protocol/sdk";
|
|
2
2
|
import type { User } from "./user";
|
|
3
|
-
import type { MACI, Verifier,
|
|
3
|
+
import type { MACI, Verifier, VerifyingKeysRegistry, FreeForAllPolicy, ConstantInitialVoiceCreditProxy, IIpfsMessage } from "@maci-protocol/sdk";
|
|
4
4
|
import type { Signer } from "ethers";
|
|
5
5
|
/**
|
|
6
6
|
* A util interface that represents a vote object
|
|
@@ -44,7 +44,7 @@ export interface ITestSuite {
|
|
|
44
44
|
export interface IDeployedTestContracts {
|
|
45
45
|
maci: MACI;
|
|
46
46
|
verifier: Verifier;
|
|
47
|
-
|
|
47
|
+
verifyingKeysRegistry: VerifyingKeysRegistry;
|
|
48
48
|
policy: FreeForAllPolicy;
|
|
49
49
|
initialVoiceCreditProxy: ConstantInitialVoiceCreditProxy;
|
|
50
50
|
}
|
|
@@ -55,7 +55,7 @@ export interface IContractsData {
|
|
|
55
55
|
initialized: boolean;
|
|
56
56
|
users?: User[];
|
|
57
57
|
maciContractAddress?: string;
|
|
58
|
-
maciState?: Awaited<ReturnType<typeof
|
|
58
|
+
maciState?: Awaited<ReturnType<typeof generateMaciStateFromContract>>;
|
|
59
59
|
polls?: string[];
|
|
60
60
|
}
|
|
61
61
|
export interface IRelayTestMessagesArgs {
|
|
@@ -65,7 +65,7 @@ export interface IRelayTestMessagesArgs {
|
|
|
65
65
|
pollId: number;
|
|
66
66
|
}
|
|
67
67
|
/**
|
|
68
|
-
* Interface for the paths to the zkey files and the wasm and
|
|
68
|
+
* Interface for the paths to the zkey files and the wasm and witnessGenerator files
|
|
69
69
|
*/
|
|
70
70
|
export interface ITestingClassPaths {
|
|
71
71
|
/**
|
|
@@ -77,21 +77,21 @@ export interface ITestingClassPaths {
|
|
|
77
77
|
*/
|
|
78
78
|
pollJoinedZkeyPath: string;
|
|
79
79
|
/**
|
|
80
|
-
* Path to the
|
|
80
|
+
* Path to the MessageProcessor zkey file
|
|
81
81
|
*/
|
|
82
|
-
|
|
82
|
+
messageProcessorZkeyPath: string;
|
|
83
83
|
/**
|
|
84
|
-
* Path to the
|
|
84
|
+
* Path to the VoteTally zkey file
|
|
85
85
|
*/
|
|
86
|
-
|
|
86
|
+
voteTallyZkeyPath: string;
|
|
87
87
|
/**
|
|
88
88
|
* Path to the poll wasm file
|
|
89
89
|
*/
|
|
90
90
|
pollWasm: string;
|
|
91
91
|
/**
|
|
92
|
-
* Path to the poll
|
|
92
|
+
* Path to the poll witnessGenerator file
|
|
93
93
|
*/
|
|
94
|
-
|
|
94
|
+
pollWitnessGenerator: string;
|
|
95
95
|
/**
|
|
96
96
|
* Path to the rapidsnark file
|
|
97
97
|
*/
|
package/build/ts/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../ts/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../ts/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,EAAE,MAAM,oBAAoB,CAAC;AAEnE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,KAAK,EACV,IAAI,EACJ,QAAQ,EACR,qBAAqB,EACrB,gBAAgB,EAChB,+BAA+B,EAC/B,YAAY,EACb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAErC;;GAEG;AACH,MAAM,WAAW,KAAK;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,iBAAiB,EAAE,MAAM,EAAE,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,yBAAyB,EAAE,MAAM,EAAE,CAAC;IACpC,8BAA8B,EAAE,MAAM,CAAC;IACvC,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC;IACpB,KAAK,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC;IAClB,eAAe,CAAC,EAAE,gBAAgB,EAAE,EAAE,CAAC;CACxC;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,IAAI,CAAC;IACX,QAAQ,EAAE,QAAQ,CAAC;IACnB,qBAAqB,EAAE,qBAAqB,CAAC;IAC7C,MAAM,EAAE,gBAAgB,CAAC;IACzB,uBAAuB,EAAE,+BAA+B,CAAC;CAC1D;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,OAAO,CAAC;IACrB,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;IACf,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,SAAS,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,6BAA6B,CAAC,CAAC,CAAC;IACtE,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,mBAAmB,EAAE,MAAM,CAAC;IAE5B;;OAEG;IACH,kBAAkB,EAAE,MAAM,CAAC;IAE3B;;OAEG;IACH,wBAAwB,EAAE,MAAM,CAAC;IAEjC;;OAEG;IACH,iBAAiB,EAAE,MAAM,CAAC;IAE1B;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,oBAAoB,EAAE,MAAM,CAAC;IAE7B;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;CACpB"}
|
package/build/ts/user.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Keypair, type
|
|
1
|
+
import { Keypair, type PrivateKey } from "@maci-protocol/domainobjs";
|
|
2
2
|
import type { IVote } from "./types";
|
|
3
3
|
/**
|
|
4
4
|
* A class representing a user and its votes
|
|
@@ -9,23 +9,19 @@ export declare class User {
|
|
|
9
9
|
voiceCreditBalance: bigint;
|
|
10
10
|
nonce: bigint;
|
|
11
11
|
stateLeafIndex?: bigint;
|
|
12
|
-
/**
|
|
13
|
-
* The timestamp of when the user joined the poll
|
|
14
|
-
*/
|
|
15
|
-
timestamp?: bigint;
|
|
16
12
|
/**
|
|
17
13
|
* Create a new instance of a UserCommand object
|
|
18
|
-
* @param
|
|
14
|
+
* @param keypair the keypair of the user
|
|
19
15
|
* @param votes the votes casted by the user
|
|
20
16
|
* @param voiceCreditBalance the voice credit balance of the user
|
|
21
17
|
* @param nonce the nonce of the user
|
|
22
|
-
* @param
|
|
18
|
+
* @param stateLeafIndex the state leaf index
|
|
23
19
|
*/
|
|
24
|
-
constructor(
|
|
20
|
+
constructor(keypair: Keypair, votes: IVote[], voiceCreditBalance: bigint, nonce: bigint, stateLeafIndex?: bigint);
|
|
25
21
|
/**
|
|
26
22
|
* Helper function that can be used to change the keypair of the user
|
|
27
23
|
* @returns
|
|
28
24
|
*/
|
|
29
|
-
changeKeypair():
|
|
25
|
+
changeKeypair(): PrivateKey;
|
|
30
26
|
}
|
|
31
27
|
//# sourceMappingURL=user.d.ts.map
|
package/build/ts/user.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../ts/user.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../ts/user.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAErE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAErC;;GAEG;AACH,qBAAa,IAAI;IACf,OAAO,EAAE,OAAO,CAAC;IAEjB,KAAK,EAAE,KAAK,EAAE,CAAC;IAEf,kBAAkB,EAAE,MAAM,CAAC;IAE3B,KAAK,EAAE,MAAM,CAAC;IAEd,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;;;;;OAOG;gBACS,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,kBAAkB,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM;IAQhH;;;OAGG;IACH,aAAa,IAAI,UAAU;CAM5B"}
|
package/build/ts/user.js
CHANGED
|
@@ -8,18 +8,17 @@ const domainobjs_1 = require("@maci-protocol/domainobjs");
|
|
|
8
8
|
class User {
|
|
9
9
|
/**
|
|
10
10
|
* Create a new instance of a UserCommand object
|
|
11
|
-
* @param
|
|
11
|
+
* @param keypair the keypair of the user
|
|
12
12
|
* @param votes the votes casted by the user
|
|
13
13
|
* @param voiceCreditBalance the voice credit balance of the user
|
|
14
14
|
* @param nonce the nonce of the user
|
|
15
|
-
* @param
|
|
15
|
+
* @param stateLeafIndex the state leaf index
|
|
16
16
|
*/
|
|
17
|
-
constructor(
|
|
18
|
-
this.keypair =
|
|
17
|
+
constructor(keypair, votes, voiceCreditBalance, nonce, stateLeafIndex) {
|
|
18
|
+
this.keypair = keypair;
|
|
19
19
|
this.votes = votes;
|
|
20
20
|
this.voiceCreditBalance = voiceCreditBalance;
|
|
21
21
|
this.nonce = nonce;
|
|
22
|
-
this.timestamp = timestamp;
|
|
23
22
|
this.stateLeafIndex = stateLeafIndex;
|
|
24
23
|
}
|
|
25
24
|
/**
|
|
@@ -28,7 +27,7 @@ class User {
|
|
|
28
27
|
*/
|
|
29
28
|
changeKeypair() {
|
|
30
29
|
const newUserKeypair = new domainobjs_1.Keypair();
|
|
31
|
-
const oldPrivateKey = this.keypair.
|
|
30
|
+
const oldPrivateKey = this.keypair.privateKey;
|
|
32
31
|
this.keypair = !newUserKeypair.equals(this.keypair) ? newUserKeypair : this.keypair;
|
|
33
32
|
return oldPrivateKey;
|
|
34
33
|
}
|
package/build/ts/user.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user.js","sourceRoot":"","sources":["../../ts/user.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"user.js","sourceRoot":"","sources":["../../ts/user.ts"],"names":[],"mappings":";;;AAAA,0DAAqE;AAIrE;;GAEG;AACH,MAAa,IAAI;IAWf;;;;;;;OAOG;IACH,YAAY,OAAgB,EAAE,KAAc,EAAE,kBAA0B,EAAE,KAAa,EAAE,cAAuB;QAC9G,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QAC7C,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;IACvC,CAAC;IAED;;;OAGG;IACH,aAAa;QACX,MAAM,cAAc,GAAG,IAAI,oBAAO,EAAE,CAAC;QACrC,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC;QAC9C,IAAI,CAAC,OAAO,GAAG,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;QACpF,OAAO,aAAa,CAAC;IACvB,CAAC;CACF;AArCD,oBAqCC"}
|
package/build/ts/utils.d.ts
CHANGED
|
@@ -23,16 +23,16 @@ export declare const readJSONFile: <T = Record<string, Record<string, string> |
|
|
|
23
23
|
* @param presetVotes - the preset votes if any
|
|
24
24
|
* @returns an array of UserCommand objects
|
|
25
25
|
*/
|
|
26
|
-
export declare const
|
|
26
|
+
export declare const generateTestUserCommands: (numUsers: number, numVotesPerUser: number, bribers?: IBriber[], presetVotes?: IVote[][]) => User[];
|
|
27
27
|
/**
|
|
28
28
|
* Assertion function to validate that the tally results are as expected
|
|
29
29
|
* @param maxMessages - the max number of messages
|
|
30
30
|
* @param expectedTally - the expected tally values
|
|
31
|
-
* @param
|
|
31
|
+
* @param expectedPerVoteOptionSpentVoiceCredits - the expected per vote option spent voice credits
|
|
32
32
|
* @param expectedTotalSpentVoiceCredits - the expected total spent voice credits
|
|
33
33
|
* @param tallyFile the tally file itself as an object
|
|
34
34
|
*/
|
|
35
|
-
export declare const expectTally: (maxMessages: number, expectedTally: number[],
|
|
35
|
+
export declare const expectTally: (maxMessages: number, expectedTally: number[], expectedPerVoteOptionSpentVoiceCredits: number[], expectedTotalSpentVoiceCredits: number, tallyFile: ITallyData) => void;
|
|
36
36
|
/**
|
|
37
37
|
* Stop the current thread for x seconds
|
|
38
38
|
* @param ms - the number of ms to sleep for
|
package/build/ts/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../ts/utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAQrD,OAAO,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAEtE,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,eAAO,MAAM,YAAY,aAAa,CAAC;AAEvC,eAAO,MAAM,WAAW;;;;;;CAMvB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,YAAY,GAAU,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC,EACvF,UAAU,MAAM,KACf,OAAO,CAAC,CAAC,CAQX,CAAC;AAiDF;;;;;;;GAOG;AACH,eAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../ts/utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAQrD,OAAO,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAEtE,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,eAAO,MAAM,YAAY,aAAa,CAAC;AAEvC,eAAO,MAAM,WAAW;;;;;;CAMvB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,YAAY,GAAU,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC,EACvF,UAAU,MAAM,KACf,OAAO,CAAC,CAAC,CAQX,CAAC;AAiDF;;;;;;;GAOG;AACH,eAAO,MAAM,wBAAwB,GACnC,UAAU,MAAM,EAChB,iBAAiB,MAAM,EACvB,UAAU,OAAO,EAAE,EACnB,cAAc,KAAK,EAAE,EAAE,KACtB,IAAI,EAsBN,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW,GACtB,aAAa,MAAM,EACnB,eAAe,MAAM,EAAE,EACvB,wCAAwC,MAAM,EAAE,EAChD,gCAAgC,MAAM,EACtC,WAAW,UAAU,KACpB,IAmBF,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,KAAK,GAAU,IAAI,MAAM,KAAG,OAAO,CAAC,IAAI,CAGjD,CAAC;AAEL;;;GAGG;AACH,eAAO,MAAM,KAAK,QAAO,OAAiC,CAAC;AAE3D;;;;;GAKG;AACH,eAAO,MAAM,eAAe,GAAU,MAAM,MAAM,EAAE,MAAM,OAAO,KAAG,OAAO,CAAC,IAAI,CAM/E,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,KAAK,GAAU,oBAAiB,KAAG,OAAO,CAAC,IAAI,CAY3D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,QAAa,OAAO,CAAC,MAAM,EAAE,CACsD,CAAC;AAEnH;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,GAAU,4CAKrC,sBAAsB,KAAG,OAAO,CAAC,IAAI,CAavC,CAAC"}
|
package/build/ts/utils.js
CHANGED
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.relayTestMessages = exports.getBackupFilenames = exports.clean = exports.writeBackupFile = exports.isArm = exports.sleep = exports.expectTally = exports.
|
|
6
|
+
exports.relayTestMessages = exports.getBackupFilenames = exports.clean = exports.writeBackupFile = exports.isArm = exports.sleep = exports.expectTally = exports.generateTestUserCommands = exports.readJSONFile = exports.defaultVote = exports.backupFolder = void 0;
|
|
7
7
|
// eslint-disable-next-line import/no-extraneous-dependencies
|
|
8
8
|
const domainobjs_1 = require("@maci-protocol/domainobjs");
|
|
9
9
|
const sdk_1 = require("@maci-protocol/sdk");
|
|
@@ -76,7 +76,7 @@ const getTestVoteValues = (userIndex, voteIndex, numVotesPerUser, votes, bribers
|
|
|
76
76
|
* @param presetVotes - the preset votes if any
|
|
77
77
|
* @returns an array of UserCommand objects
|
|
78
78
|
*/
|
|
79
|
-
const
|
|
79
|
+
const generateTestUserCommands = (numUsers, numVotesPerUser, bribers, presetVotes) => {
|
|
80
80
|
const usersCommands = [];
|
|
81
81
|
for (let i = 0; i < numUsers; i += 1) {
|
|
82
82
|
const userKeypair = new domainobjs_1.Keypair();
|
|
@@ -95,30 +95,30 @@ const genTestUserCommands = (numUsers, numVotesPerUser, bribers, presetVotes) =>
|
|
|
95
95
|
}
|
|
96
96
|
return usersCommands;
|
|
97
97
|
};
|
|
98
|
-
exports.
|
|
98
|
+
exports.generateTestUserCommands = generateTestUserCommands;
|
|
99
99
|
/**
|
|
100
100
|
* Assertion function to validate that the tally results are as expected
|
|
101
101
|
* @param maxMessages - the max number of messages
|
|
102
102
|
* @param expectedTally - the expected tally values
|
|
103
|
-
* @param
|
|
103
|
+
* @param expectedPerVoteOptionSpentVoiceCredits - the expected per vote option spent voice credits
|
|
104
104
|
* @param expectedTotalSpentVoiceCredits - the expected total spent voice credits
|
|
105
105
|
* @param tallyFile the tally file itself as an object
|
|
106
106
|
*/
|
|
107
|
-
const expectTally = (maxMessages, expectedTally,
|
|
108
|
-
const
|
|
109
|
-
const
|
|
107
|
+
const expectTally = (maxMessages, expectedTally, expectedPerVoteOptionSpentVoiceCredits, expectedTotalSpentVoiceCredits, tallyFile) => {
|
|
108
|
+
const tally = Array(maxMessages).fill("0");
|
|
109
|
+
const perVOSpentVoiceCredits = Array(maxMessages).fill("0");
|
|
110
110
|
expectedTally.forEach((voteWeight, voteOption) => {
|
|
111
111
|
if (voteWeight !== 0) {
|
|
112
|
-
|
|
112
|
+
tally[voteOption] = voteWeight.toString();
|
|
113
113
|
}
|
|
114
114
|
});
|
|
115
|
-
|
|
115
|
+
expectedPerVoteOptionSpentVoiceCredits.forEach((spentCredit, index) => {
|
|
116
116
|
if (spentCredit !== 0) {
|
|
117
|
-
|
|
117
|
+
perVOSpentVoiceCredits[index] = spentCredit.toString();
|
|
118
118
|
}
|
|
119
119
|
});
|
|
120
|
-
(0, chai_1.expect)(tallyFile.results.tally).to.deep.equal(
|
|
121
|
-
(0, chai_1.expect)(tallyFile.
|
|
120
|
+
(0, chai_1.expect)(tallyFile.results.tally).to.deep.equal(tally);
|
|
121
|
+
(0, chai_1.expect)(tallyFile.perVoteOptionSpentVoiceCredits?.tally).to.deep.equal(perVOSpentVoiceCredits);
|
|
122
122
|
(0, chai_1.expect)(tallyFile.totalSpentVoiceCredits.spent).to.eq(expectedTotalSpentVoiceCredits.toString());
|
|
123
123
|
};
|
|
124
124
|
exports.expectTally = expectTally;
|
package/build/ts/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../ts/utils.ts"],"names":[],"mappings":";;;;;;AAAA,6DAA6D;AAC7D,0DAAoD;AAEpD,4CAAsF;AACtF,+BAA8B;AAE9B,4CAAoB;AACpB,2BAA0B;AAC1B,gDAAwB;AAIxB,iCAA8B;AAEjB,QAAA,YAAY,GAAG,UAAU,CAAC;AAE1B,QAAA,WAAW,GAAG;IACzB,UAAU,EAAE,EAAE;IACd,KAAK,EAAE,EAAE;IACT,aAAa,EAAE,GAAG;IAClB,iBAAiB,EAAE,EAAE;IACrB,eAAe,EAAE,EAAE;CACpB,CAAC;AAEF;;;;GAIG;AACI,MAAM,YAAY,GAAG,KAAK,EAC/B,QAAgB,EACJ,EAAE;IACd,MAAM,QAAQ,GAAG,YAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAEzC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,QAAQ,QAAQ,iBAAiB,CAAC,CAAC;IACrD,CAAC;IAED,OAAO,YAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAM,CAAC,CAAC;AACvF,CAAC,CAAC;AAVW,QAAA,YAAY,gBAUvB;AAEF;;;;;;;;GAQG;AACH,MAAM,iBAAiB,GAAG,CACxB,SAAiB,EACjB,SAAiB,EACjB,eAAuB,EACvB,KAAiB,EACjB,OAAmB,EACnB,EAAE;IACF,kCAAkC;IAClC,MAAM,QAAQ,GAAG,KAAK,IAAI,SAAS,IAAI,KAAK,CAAC;IAC7C,IAAI,EAAE,eAAe,EAAE,GAAG,mBAAW,CAAC;IACtC,IAAI,EAAE,UAAU,EAAE,GAAG,mBAAW,CAAC;IAEjC,qBAAqB;IACrB,IAAI,OAAO,IAAI,SAAS,IAAI,OAAO,EAAE,CAAC;QACpC,IAAI,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,iBAAiB,CAAC,MAAM,KAAK,eAAe,CAAC,EAAE,CAAC;YACvE,MAAM,IAAI,KAAK,CAAC,sEAAsE,CAAC,CAAC;QAC1F,CAAC;QAED,qCAAqC;QACrC,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC,iBAAiB,CAAC,SAAS,CAAC,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,eAAe,EAAE,CAAC;gBACpG,MAAM,IAAI,KAAK,CACb,qGAAqG,CACtG,CAAC;YACJ,CAAC;QACH,CAAC;QACD,eAAe,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;IACpE,CAAC;SAAM,IAAI,QAAQ,EAAE,CAAC;QACpB,eAAe,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC;IAChE,CAAC;IAED,IAAI,QAAQ,EAAE,CAAC;QACb,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC;IACtD,CAAC;IAED,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,CAAC;AACzC,CAAC,CAAC;AAEF;;;;;;;GAOG;AACI,MAAM,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../ts/utils.ts"],"names":[],"mappings":";;;;;;AAAA,6DAA6D;AAC7D,0DAAoD;AAEpD,4CAAsF;AACtF,+BAA8B;AAE9B,4CAAoB;AACpB,2BAA0B;AAC1B,gDAAwB;AAIxB,iCAA8B;AAEjB,QAAA,YAAY,GAAG,UAAU,CAAC;AAE1B,QAAA,WAAW,GAAG;IACzB,UAAU,EAAE,EAAE;IACd,KAAK,EAAE,EAAE;IACT,aAAa,EAAE,GAAG;IAClB,iBAAiB,EAAE,EAAE;IACrB,eAAe,EAAE,EAAE;CACpB,CAAC;AAEF;;;;GAIG;AACI,MAAM,YAAY,GAAG,KAAK,EAC/B,QAAgB,EACJ,EAAE;IACd,MAAM,QAAQ,GAAG,YAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAEzC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,QAAQ,QAAQ,iBAAiB,CAAC,CAAC;IACrD,CAAC;IAED,OAAO,YAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAM,CAAC,CAAC;AACvF,CAAC,CAAC;AAVW,QAAA,YAAY,gBAUvB;AAEF;;;;;;;;GAQG;AACH,MAAM,iBAAiB,GAAG,CACxB,SAAiB,EACjB,SAAiB,EACjB,eAAuB,EACvB,KAAiB,EACjB,OAAmB,EACnB,EAAE;IACF,kCAAkC;IAClC,MAAM,QAAQ,GAAG,KAAK,IAAI,SAAS,IAAI,KAAK,CAAC;IAC7C,IAAI,EAAE,eAAe,EAAE,GAAG,mBAAW,CAAC;IACtC,IAAI,EAAE,UAAU,EAAE,GAAG,mBAAW,CAAC;IAEjC,qBAAqB;IACrB,IAAI,OAAO,IAAI,SAAS,IAAI,OAAO,EAAE,CAAC;QACpC,IAAI,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,iBAAiB,CAAC,MAAM,KAAK,eAAe,CAAC,EAAE,CAAC;YACvE,MAAM,IAAI,KAAK,CAAC,sEAAsE,CAAC,CAAC;QAC1F,CAAC;QAED,qCAAqC;QACrC,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC,iBAAiB,CAAC,SAAS,CAAC,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,eAAe,EAAE,CAAC;gBACpG,MAAM,IAAI,KAAK,CACb,qGAAqG,CACtG,CAAC;YACJ,CAAC;QACH,CAAC;QACD,eAAe,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;IACpE,CAAC;SAAM,IAAI,QAAQ,EAAE,CAAC;QACpB,eAAe,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC;IAChE,CAAC;IAED,IAAI,QAAQ,EAAE,CAAC;QACb,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC;IACtD,CAAC;IAED,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,CAAC;AACzC,CAAC,CAAC;AAEF;;;;;;;GAOG;AACI,MAAM,wBAAwB,GAAG,CACtC,QAAgB,EAChB,eAAuB,EACvB,OAAmB,EACnB,WAAuB,EACf,EAAE;IACV,MAAM,aAAa,GAAW,EAAE,CAAC;IACjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACrC,MAAM,WAAW,GAAG,IAAI,oBAAO,EAAE,CAAC;QAClC,MAAM,KAAK,GAAY,EAAE,CAAC;QAE1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,eAAe,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5C,MAAM,EAAE,eAAe,EAAE,UAAU,EAAE,GAAG,iBAAiB,CAAC,CAAC,EAAE,CAAC,EAAE,eAAe,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;YACvG,MAAM,IAAI,GAAG;gBACX,eAAe;gBACf,UAAU;gBACV,KAAK,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC;aACrB,CAAC;YAEF,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnB,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,WAAI,CAAC,WAAW,EAAE,KAAK,EAAE,mBAAW,CAAC,aAAa,EAAE,mBAAW,CAAC,KAAK,CAAC,CAAC;QAC/F,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAClC,CAAC;IAED,OAAO,aAAa,CAAC;AACvB,CAAC,CAAC;AA3BW,QAAA,wBAAwB,4BA2BnC;AAEF;;;;;;;GAOG;AACI,MAAM,WAAW,GAAG,CACzB,WAAmB,EACnB,aAAuB,EACvB,sCAAgD,EAChD,8BAAsC,EACtC,SAAqB,EACf,EAAE;IACR,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC3C,MAAM,sBAAsB,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAE5D,aAAa,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,UAAU,EAAE,EAAE;QAC/C,IAAI,UAAU,KAAK,CAAC,EAAE,CAAC;YACrB,KAAK,CAAC,UAAU,CAAC,GAAG,UAAU,CAAC,QAAQ,EAAE,CAAC;QAC5C,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,sCAAsC,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,KAAK,EAAE,EAAE;QACpE,IAAI,WAAW,KAAK,CAAC,EAAE,CAAC;YACtB,sBAAsB,CAAC,KAAK,CAAC,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC;QACzD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,IAAA,aAAM,EAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACrD,IAAA,aAAM,EAAC,SAAS,CAAC,8BAA8B,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC9F,IAAA,aAAM,EAAC,SAAS,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,8BAA8B,CAAC,QAAQ,EAAE,CAAC,CAAC;AAClG,CAAC,CAAC;AAzBW,QAAA,WAAW,eAyBtB;AAEF;;;GAGG;AACI,MAAM,KAAK,GAAG,KAAK,EAAE,EAAU,EAAiB,EAAE,CACvD,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;IACtB,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;AAC1B,CAAC,CAAC,CAAC;AAHQ,QAAA,KAAK,SAGb;AAEL;;;GAGG;AACI,MAAM,KAAK,GAAG,GAAY,EAAE,CAAC,IAAA,SAAI,GAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAA9C,QAAA,KAAK,SAAyC;AAE3D;;;;;GAKG;AACI,MAAM,eAAe,GAAG,KAAK,EAAE,IAAY,EAAE,IAAa,EAAiB,EAAE;IAClF,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,oBAAY,CAAC,EAAE,CAAC;QACjC,MAAM,YAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,oBAAY,CAAC,CAAC;IACxC,CAAC;IAED,MAAM,YAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,cAAI,CAAC,OAAO,CAAC,oBAAY,EAAE,GAAG,IAAI,OAAO,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;AAChG,CAAC,CAAC;AANW,QAAA,eAAe,mBAM1B;AAEF;;;GAGG;AACI,MAAM,KAAK,GAAG,KAAK,EAAE,UAAU,GAAG,IAAI,EAAiB,EAAE;IAC9D,MAAM,KAAK,GAAG,MAAM,YAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAEpD,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,YAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,cAAI,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAEvF,IAAI,YAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;QAClC,MAAM,YAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC;IACvC,CAAC;IAED,IAAI,UAAU,IAAI,YAAE,CAAC,UAAU,CAAC,oBAAY,CAAC,EAAE,CAAC;QAC9C,MAAM,YAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,oBAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACvE,CAAC;AACH,CAAC,CAAC;AAZW,QAAA,KAAK,SAYhB;AAEF;;;;GAIG;AACI,MAAM,kBAAkB,GAAG,KAAK,IAAuB,EAAE,CAC9D,YAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,oBAAY,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,cAAI,CAAC,OAAO,CAAC,oBAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;AADtG,QAAA,kBAAkB,sBACoF;AAEnH;;;;GAIG;AACI,MAAM,iBAAiB,GAAG,KAAK,EAAE,EACtC,QAAQ,EACR,WAAW,EACX,MAAM,EACN,MAAM,GACiB,EAAiB,EAAE;IAC1C,MAAM,GAAG,GAAG,MAAM,IAAA,yBAAmB,EAAC,QAAQ,CAAC,CAAC;IAChD,MAAM,QAAQ,GAAG,MAAM,IAAA,kBAAY,EAAC,GAAG,CAAC,CAAC;IAEzC,MAAM,IAAA,uBAAe,EAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAE1C,MAAM,IAAA,mBAAa,EAAC;QAClB,WAAW;QACX,MAAM;QACN,QAAQ;QACR,QAAQ;QACR,MAAM;KACP,CAAC,CAAC;AACL,CAAC,CAAC;AAlBW,QAAA,iBAAiB,qBAkB5B"}
|