@maci-protocol/website 0.0.0-ci.2653bc0
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/.eslintrc.js +157 -0
- package/CHANGELOG.md +566 -0
- package/LICENSE +22 -0
- package/README.md +58 -0
- package/babel.config.js +3 -0
- package/blog/2021-10-12-maci-v1.md +100 -0
- package/blog/2022-09-22-maci-v1-technical-introduction.md +180 -0
- package/blog/2023-01-18-maci-v1.1.1.md +121 -0
- package/blog/2024-01-18-roadmap.md +106 -0
- package/blog/2024-02-28-maci-v1.2.0.md +121 -0
- package/blog/2024-04-10-roadmap-q2.md +96 -0
- package/blog/2024-05-08-ethdam.md +169 -0
- package/blog/2024-05-22-the-origins-of-maci.md +38 -0
- package/blog/2024-05-28-upcoming-grants.md +85 -0
- package/blog/2024-06-17-understanding-maci.md +63 -0
- package/blog/2024-06-21-deciphering-maci.md +48 -0
- package/blog/2024-06-28-revolusioning-public-goods-funding.md +32 -0
- package/blog/2024-07-23-q2-review.md +72 -0
- package/blog/2024-07-30-roadmap-q3.md +61 -0
- package/blog/2024-08-10-maci-v2.md +102 -0
- package/blog/2024-08-29-anonymous-poll-joining.md +47 -0
- package/blog/2024-10-29-q3-review.md +63 -0
- package/blog/2024-11-20-maci-platform.md +93 -0
- package/blog/2024-12-01-maci-getting-started.md +294 -0
- package/blog/2025-03-21-roadmap-2025.md +112 -0
- package/blog/assets/MACI_Bob_SignUp_1.png +0 -0
- package/blog/assets/MACI_Bob_SignUp_2.png +0 -0
- package/blog/assets/MACI_Complex_Message.png +0 -0
- package/blog/assets/MACI_Contracts.png +0 -0
- package/blog/assets/MACI_Sign_Up.png +0 -0
- package/blog/assets/MACI_Simple_Message.png +0 -0
- package/blog/assets/MACI_Verifier_1.png +0 -0
- package/blog/authors.yml +5 -0
- package/docusaurus.config.ts +213 -0
- package/package.json +65 -0
- package/src/components/ActionCard/index.tsx +30 -0
- package/src/components/ActionCard/styles.module.css +96 -0
- package/src/components/HomepageFeatures/index.tsx +91 -0
- package/src/components/HomepageFeatures/styles.module.css +17 -0
- package/src/components/ProjectCard/index.tsx +74 -0
- package/src/components/ProjectCard/styles.module.css +77 -0
- package/src/components/ProjectList/index.tsx +218 -0
- package/src/components/ProjectList/styles.module.css +180 -0
- package/src/content/projects.json +294 -0
- package/src/css/card.module.css +130 -0
- package/src/css/custom.css +91 -0
- package/src/icons/IconDiscord.tsx +16 -0
- package/src/icons/IconGithub.tsx +16 -0
- package/src/icons/IconWebsite.tsx +16 -0
- package/src/pages/blogs.tsx +58 -0
- package/src/pages/index.module.css +152 -0
- package/src/pages/index.tsx +66 -0
- package/src/pages/projects.tsx +44 -0
- package/src/pages/roadmap.md +150 -0
- package/src/pages/typedoc.tsx +11 -0
- package/src/plugins/blog-plugin/index.ts +86 -0
- package/src/react-app-env.d.ts +1 -0
- package/src/scripts/setupSolidityDocs.ts +67 -0
- package/src/scripts/setupTypedoc.ts +112 -0
- package/src/scripts/utils.ts +115 -0
- package/src/utils/getProjectsByFilter.ts +40 -0
- package/static/.nojekyll +0 -0
- package/static/audit_reports/20210922_Hashcloak_audit_report.pdf +0 -0
- package/static/audit_reports/202220930_Hashcloak_audit_report.pdf +0 -0
- package/static/audit_reports/20240223_PSE_Audit_audit_report.pdf +0 -0
- package/static/audit_reports/20240731_PSE_Audit_audit_report.pdf +0 -0
- package/static/fonts/DM_Sans.woff2 +0 -0
- package/static/fonts/Share_Tech_Mono.woff2 +0 -0
- package/static/img/box.png +0 -0
- package/static/img/box_dark.png +0 -0
- package/static/img/chain.png +0 -0
- package/static/img/chain_dark.png +0 -0
- package/static/img/chart.png +0 -0
- package/static/img/chart_dark.png +0 -0
- package/static/img/circuits/MACI-Circuits.excalidraw +39652 -0
- package/static/img/circuits/calculateTotal.svg +21 -0
- package/static/img/circuits/ecdh.svg +21 -0
- package/static/img/circuits/messageToCommand.svg +21 -0
- package/static/img/circuits/messageValidator.svg +21 -0
- package/static/img/circuits/poseidonHasher13.svg +21 -0
- package/static/img/circuits/privToPubkey.svg +21 -0
- package/static/img/circuits/processMessages.svg +21 -0
- package/static/img/circuits/processMessagesInputHasher.svg +21 -0
- package/static/img/circuits/processMessages_2_0.svg +21 -0
- package/static/img/circuits/processOne.svg +21 -0
- package/static/img/circuits/processTopup.svg +21 -0
- package/static/img/circuits/processingAfterPollEnds.svg +21 -0
- package/static/img/circuits/quinBatchLeavesExists.svg +21 -0
- package/static/img/circuits/quinCheckRoot.svg +21 -0
- package/static/img/circuits/quinGeneratePathIndices.svg +21 -0
- package/static/img/circuits/quinSelector.svg +21 -0
- package/static/img/circuits/resultsCommitmentVerifier.svg +21 -0
- package/static/img/circuits/splicer.svg +21 -0
- package/static/img/circuits/tallyInputHasher.svg +21 -0
- package/static/img/circuits/tallyVotes.svg +21 -0
- package/static/img/circuits/unpackElement.svg +21 -0
- package/static/img/circuits/verifySignature.svg +21 -0
- package/static/img/completingAPoll.svg +4 -0
- package/static/img/contracts.svg +16 -0
- package/static/img/coordinatorComponents.svg +21 -0
- package/static/img/favicon.ico +0 -0
- package/static/img/generateProofs.svg +4 -0
- package/static/img/hero.svg +9 -0
- package/static/img/maci-card.png +0 -0
- package/static/img/maci-rpgf-design.jpg +0 -0
- package/static/img/messageProcessingLocal.svg +21 -0
- package/static/img/offlineProcessing.svg +21 -0
- package/static/img/pse-logo-round.png +0 -0
- package/static/img/relayer-diagram.png +0 -0
- package/static/img/tallyCommitments.svg +4 -0
- package/static/img/voteTallyingLocal.svg +21 -0
- package/tsconfig.json +34 -0
- package/versioned_docs/version-v0.x/circuits.md +22 -0
- package/versioned_docs/version-v0.x/contract.md +186 -0
- package/versioned_docs/version-v0.x/faq.md +67 -0
- package/versioned_docs/version-v0.x/introduction.md +119 -0
- package/versioned_docs/version-v0.x/quadratic-vote-tallying-circuit.md +138 -0
- package/versioned_docs/version-v0.x/state-root-transition-circuit.md +230 -0
- package/versioned_docs/version-v1.2/audit.md +160 -0
- package/versioned_docs/version-v1.2/ci-pipeline.md +38 -0
- package/versioned_docs/version-v1.2/circuits.md +508 -0
- package/versioned_docs/version-v1.2/cli.md +689 -0
- package/versioned_docs/version-v1.2/contracts.md +445 -0
- package/versioned_docs/version-v1.2/contributing/code-of-conduct.md +91 -0
- package/versioned_docs/version-v1.2/contributing/contributing.md +129 -0
- package/versioned_docs/version-v1.2/coordinator-processing.md +46 -0
- package/versioned_docs/version-v1.2/deployment.md +122 -0
- package/versioned_docs/version-v1.2/installation.md +175 -0
- package/versioned_docs/version-v1.2/integrating.md +200 -0
- package/versioned_docs/version-v1.2/introduction.md +94 -0
- package/versioned_docs/version-v1.2/key-change.md +182 -0
- package/versioned_docs/version-v1.2/overview.md +47 -0
- package/versioned_docs/version-v1.2/poll-types.md +68 -0
- package/versioned_docs/version-v1.2/primitives.md +216 -0
- package/versioned_docs/version-v1.2/project-ideas.md +14 -0
- package/versioned_docs/version-v1.2/purpose.md +62 -0
- package/versioned_docs/version-v1.2/solidity-docs/MACI.md +345 -0
- package/versioned_docs/version-v1.2/solidity-docs/MessageProcessor.md +266 -0
- package/versioned_docs/version-v1.2/solidity-docs/MessageProcessorFactory.md +26 -0
- package/versioned_docs/version-v1.2/solidity-docs/Poll.md +381 -0
- package/versioned_docs/version-v1.2/solidity-docs/PollFactory.md +50 -0
- package/versioned_docs/version-v1.2/solidity-docs/SignUpToken.md +27 -0
- package/versioned_docs/version-v1.2/solidity-docs/Subsidy.md +218 -0
- package/versioned_docs/version-v1.2/solidity-docs/SubsidyFactory.md +27 -0
- package/versioned_docs/version-v1.2/solidity-docs/Tally.md +311 -0
- package/versioned_docs/version-v1.2/solidity-docs/TallyFactory.md +27 -0
- package/versioned_docs/version-v1.2/solidity-docs/TallyNonQv.md +296 -0
- package/versioned_docs/version-v1.2/solidity-docs/TallyNonQvFactory.md +27 -0
- package/versioned_docs/version-v1.2/solidity-docs/TopupCredit.md +61 -0
- package/versioned_docs/version-v1.2/solidity-docs/VkRegistry.md +457 -0
- package/versioned_docs/version-v1.2/solidity-docs/benchmarks/HasherBenchmarks.md +44 -0
- package/versioned_docs/version-v1.2/solidity-docs/crypto/Hasher.md +125 -0
- package/versioned_docs/version-v1.2/solidity-docs/crypto/IVerifier.md +11 -0
- package/versioned_docs/version-v1.2/solidity-docs/crypto/MockVerifier.md +17 -0
- package/versioned_docs/version-v1.2/solidity-docs/crypto/Pairing.md +85 -0
- package/versioned_docs/version-v1.2/solidity-docs/crypto/PoseidonT3.md +9 -0
- package/versioned_docs/version-v1.2/solidity-docs/crypto/PoseidonT4.md +9 -0
- package/versioned_docs/version-v1.2/solidity-docs/crypto/PoseidonT5.md +9 -0
- package/versioned_docs/version-v1.2/solidity-docs/crypto/PoseidonT6.md +9 -0
- package/versioned_docs/version-v1.2/solidity-docs/crypto/SnarkCommon.md +16 -0
- package/versioned_docs/version-v1.2/solidity-docs/crypto/SnarkConstants.md +40 -0
- package/versioned_docs/version-v1.2/solidity-docs/crypto/Verifier.md +61 -0
- package/versioned_docs/version-v1.2/solidity-docs/gatekeepers/EASGatekeeper.md +121 -0
- package/versioned_docs/version-v1.2/solidity-docs/gatekeepers/FreeForAllSignUpGatekeeper.md +40 -0
- package/versioned_docs/version-v1.2/solidity-docs/gatekeepers/SignUpGatekeeper.md +26 -0
- package/versioned_docs/version-v1.2/solidity-docs/gatekeepers/SignUpTokenGatekeeper.md +93 -0
- package/versioned_docs/version-v1.2/solidity-docs/gatekeepers/hatsGatekeepers/HatsGatekeeperBase.md +79 -0
- package/versioned_docs/version-v1.2/solidity-docs/gatekeepers/hatsGatekeepers/HatsGatekeeperMultiple.md +48 -0
- package/versioned_docs/version-v1.2/solidity-docs/gatekeepers/hatsGatekeepers/HatsGatekeeperSingle.md +42 -0
- package/versioned_docs/version-v1.2/solidity-docs/index.md +4 -0
- package/versioned_docs/version-v1.2/solidity-docs/initialVoiceCreditProxy/ConstantInitialVoiceCreditProxy.md +40 -0
- package/versioned_docs/version-v1.2/solidity-docs/initialVoiceCreditProxy/InitialVoiceCreditProxy.md +26 -0
- package/versioned_docs/version-v1.2/solidity-docs/interfaces/IEAS.md +40 -0
- package/versioned_docs/version-v1.2/solidity-docs/interfaces/IHats.md +103 -0
- package/versioned_docs/version-v1.2/solidity-docs/interfaces/IMPFactory.md +26 -0
- package/versioned_docs/version-v1.2/solidity-docs/interfaces/IMessageProcessor.md +31 -0
- package/versioned_docs/version-v1.2/solidity-docs/interfaces/IPoll.md +217 -0
- package/versioned_docs/version-v1.2/solidity-docs/interfaces/IPollFactory.md +29 -0
- package/versioned_docs/version-v1.2/solidity-docs/interfaces/ITallyFactory.md +28 -0
- package/versioned_docs/version-v1.2/solidity-docs/interfaces/ITallySubsidyFactory.md +27 -0
- package/versioned_docs/version-v1.2/solidity-docs/interfaces/IVerifier.md +25 -0
- package/versioned_docs/version-v1.2/solidity-docs/interfaces/IVkRegistry.md +70 -0
- package/versioned_docs/version-v1.2/solidity-docs/mocks/MockHatsProtocol.md +133 -0
- package/versioned_docs/version-v1.2/solidity-docs/trees/AccQueue.md +464 -0
- package/versioned_docs/version-v1.2/solidity-docs/trees/AccQueueBinary.md +60 -0
- package/versioned_docs/version-v1.2/solidity-docs/trees/AccQueueBinary0.md +40 -0
- package/versioned_docs/version-v1.2/solidity-docs/trees/AccQueueBinaryMaci.md +34 -0
- package/versioned_docs/version-v1.2/solidity-docs/trees/AccQueueQuinary.md +75 -0
- package/versioned_docs/version-v1.2/solidity-docs/trees/AccQueueQuinary0.md +40 -0
- package/versioned_docs/version-v1.2/solidity-docs/trees/AccQueueQuinaryBlankSl.md +40 -0
- package/versioned_docs/version-v1.2/solidity-docs/trees/AccQueueQuinaryMaci.md +40 -0
- package/versioned_docs/version-v1.2/solidity-docs/trees/EmptyBallotRoots.md +13 -0
- package/versioned_docs/version-v1.2/solidity-docs/utilities/CommonUtilities.md +25 -0
- package/versioned_docs/version-v1.2/solidity-docs/utilities/DomainObjs.md +40 -0
- package/versioned_docs/version-v1.2/solidity-docs/utilities/Params.md +36 -0
- package/versioned_docs/version-v1.2/solidity-docs/utilities/Utilities.md +79 -0
- package/versioned_docs/version-v1.2/spec.md +944 -0
- package/versioned_docs/version-v1.2/testing-in-detail.md +209 -0
- package/versioned_docs/version-v1.2/testing.md +472 -0
- package/versioned_docs/version-v1.2/topup.md +43 -0
- package/versioned_docs/version-v1.2/troubleshooting.md +51 -0
- package/versioned_docs/version-v1.2/trusted-setup.md +76 -0
- package/versioned_docs/version-v1.2/typedoc/cli/.nojekyll +1 -0
- package/versioned_docs/version-v1.2/typedoc/cli/index.md +15 -0
- package/versioned_docs/version-v1.2/typedoc/cli/interfaces/AirdropArgs.md +89 -0
- package/versioned_docs/version-v1.2/typedoc/cli/interfaces/DeployArgs.md +154 -0
- package/versioned_docs/version-v1.2/typedoc/cli/interfaces/DeployPollArgs.md +154 -0
- package/versioned_docs/version-v1.2/typedoc/cli/interfaces/DeployedContracts.md +130 -0
- package/versioned_docs/version-v1.2/typedoc/cli/interfaces/GenLocalStateArgs.md +168 -0
- package/versioned_docs/version-v1.2/typedoc/cli/interfaces/GenProofsArgs.md +388 -0
- package/versioned_docs/version-v1.2/typedoc/cli/interfaces/IGenKeypairArgs.md +37 -0
- package/versioned_docs/version-v1.2/typedoc/cli/interfaces/IRegisteredUserArgs.md +63 -0
- package/versioned_docs/version-v1.2/typedoc/cli/interfaces/MergeMessagesArgs.md +76 -0
- package/versioned_docs/version-v1.2/typedoc/cli/interfaces/MergeSignupsArgs.md +76 -0
- package/versioned_docs/version-v1.2/typedoc/cli/interfaces/PollContracts.md +53 -0
- package/versioned_docs/version-v1.2/typedoc/cli/interfaces/ProveOnChainArgs.md +128 -0
- package/versioned_docs/version-v1.2/typedoc/cli/interfaces/PublishArgs.md +154 -0
- package/versioned_docs/version-v1.2/typedoc/cli/interfaces/SignupArgs.md +89 -0
- package/versioned_docs/version-v1.2/typedoc/cli/interfaces/SubsidyData.md +73 -0
- package/versioned_docs/version-v1.2/typedoc/cli/interfaces/TallyData.md +166 -0
- package/versioned_docs/version-v1.2/typedoc/cli/interfaces/TopupArgs.md +89 -0
- package/versioned_docs/version-v1.2/typedoc/cli/interfaces/VerifyArgs.md +128 -0
- package/versioned_docs/version-v1.2/typedoc/cli/modules.md +556 -0
- package/versioned_docs/version-v1.2/typedoc/core/.nojekyll +1 -0
- package/versioned_docs/version-v1.2/typedoc/core/classes/MaciState.md +295 -0
- package/versioned_docs/version-v1.2/typedoc/core/classes/Poll.md +1098 -0
- package/versioned_docs/version-v1.2/typedoc/core/index.md +110 -0
- package/versioned_docs/version-v1.2/typedoc/core/interfaces/BatchSizes.md +50 -0
- package/versioned_docs/version-v1.2/typedoc/core/interfaces/IJsonMaciState.md +77 -0
- package/versioned_docs/version-v1.2/typedoc/core/interfaces/IProcessMessagesCircuitInputs.md +242 -0
- package/versioned_docs/version-v1.2/typedoc/core/interfaces/ISubsidyCircuitInputs.md +198 -0
- package/versioned_docs/version-v1.2/typedoc/core/interfaces/ITallyCircuitInputs.md +231 -0
- package/versioned_docs/version-v1.2/typedoc/core/interfaces/MaxValues.md +37 -0
- package/versioned_docs/version-v1.2/typedoc/core/interfaces/TreeDepths.md +63 -0
- package/versioned_docs/version-v1.2/typedoc/core/modules.md +289 -0
- package/versioned_docs/version-v1.2/typedoc/crypto/.nojekyll +1 -0
- package/versioned_docs/version-v1.2/typedoc/crypto/classes/AccQueue.md +770 -0
- package/versioned_docs/version-v1.2/typedoc/crypto/classes/G1Point.md +115 -0
- package/versioned_docs/version-v1.2/typedoc/crypto/classes/G2Point.md +140 -0
- package/versioned_docs/version-v1.2/typedoc/crypto/classes/IncrementalQuinTree.md +470 -0
- package/versioned_docs/version-v1.2/typedoc/crypto/index.md +44 -0
- package/versioned_docs/version-v1.2/typedoc/crypto/interfaces/Keypair.md +33 -0
- package/versioned_docs/version-v1.2/typedoc/crypto/interfaces/PoseidonFuncs.md +115 -0
- package/versioned_docs/version-v1.2/typedoc/crypto/interfaces/Queue.md +33 -0
- package/versioned_docs/version-v1.2/typedoc/crypto/interfaces/Signature.md +37 -0
- package/versioned_docs/version-v1.2/typedoc/crypto/modules.md +913 -0
- package/versioned_docs/version-v1.2/typedoc/domainobjs/.nojekyll +1 -0
- package/versioned_docs/version-v1.2/typedoc/domainobjs/classes/Ballot.md +274 -0
- package/versioned_docs/version-v1.2/typedoc/domainobjs/classes/Keypair.md +181 -0
- package/versioned_docs/version-v1.2/typedoc/domainobjs/classes/Message.md +244 -0
- package/versioned_docs/version-v1.2/typedoc/domainobjs/classes/PCommand.md +409 -0
- package/versioned_docs/version-v1.2/typedoc/domainobjs/classes/PrivKey.md +206 -0
- package/versioned_docs/version-v1.2/typedoc/domainobjs/classes/PubKey.md +289 -0
- package/versioned_docs/version-v1.2/typedoc/domainobjs/classes/StateLeaf.md +340 -0
- package/versioned_docs/version-v1.2/typedoc/domainobjs/classes/TCommand.md +200 -0
- package/versioned_docs/version-v1.2/typedoc/domainobjs/classes/VerifyingKey.md +240 -0
- package/versioned_docs/version-v1.2/typedoc/domainobjs/index.md +81 -0
- package/versioned_docs/version-v1.2/typedoc/domainobjs/interfaces/ICommand.md +104 -0
- package/versioned_docs/version-v1.2/typedoc/domainobjs/interfaces/IG1ContractParams.md +31 -0
- package/versioned_docs/version-v1.2/typedoc/domainobjs/interfaces/IG2ContractParams.md +31 -0
- package/versioned_docs/version-v1.2/typedoc/domainobjs/interfaces/IJsonBallot.md +42 -0
- package/versioned_docs/version-v1.2/typedoc/domainobjs/interfaces/IJsonCommand.md +32 -0
- package/versioned_docs/version-v1.2/typedoc/domainobjs/interfaces/IJsonKeyPair.md +31 -0
- package/versioned_docs/version-v1.2/typedoc/domainobjs/interfaces/IJsonPCommand.md +111 -0
- package/versioned_docs/version-v1.2/typedoc/domainobjs/interfaces/IJsonStateLeaf.md +42 -0
- package/versioned_docs/version-v1.2/typedoc/domainobjs/interfaces/IJsonTCommand.md +67 -0
- package/versioned_docs/version-v1.2/typedoc/domainobjs/interfaces/IMessageContractParams.md +31 -0
- package/versioned_docs/version-v1.2/typedoc/domainobjs/interfaces/IStateLeaf.md +39 -0
- package/versioned_docs/version-v1.2/typedoc/domainobjs/interfaces/IStateLeafContractParams.md +42 -0
- package/versioned_docs/version-v1.2/typedoc/domainobjs/interfaces/IVkContractParams.md +64 -0
- package/versioned_docs/version-v1.2/typedoc/domainobjs/interfaces/IVkObjectParams.md +108 -0
- package/versioned_docs/version-v1.2/typedoc/domainobjs/interfaces/Proof.md +46 -0
- package/versioned_docs/version-v1.2/typedoc/domainobjs/interfaces/VoteOptionTreeLeaf.md +24 -0
- package/versioned_docs/version-v1.2/typedoc/domainobjs/modules.md +110 -0
- package/versioned_docs/version-v1.2/typedoc/index.md +4 -0
- package/versioned_docs/version-v1.2/versioning.md +94 -0
- package/versioned_docs/version-v1.2/workflow.md +142 -0
- package/versioned_docs/version-v2.x/case-studies.md +35 -0
- package/versioned_docs/version-v2.x/contributing/_category_.json +4 -0
- package/versioned_docs/version-v2.x/contributing/code-of-conduct.md +92 -0
- package/versioned_docs/version-v2.x/contributing/contributing.md +149 -0
- package/versioned_docs/version-v2.x/contributing/project-ideas.md +78 -0
- package/versioned_docs/version-v2.x/core-concepts/_category_.json +4 -0
- package/versioned_docs/version-v2.x/core-concepts/ballot.md +19 -0
- package/versioned_docs/version-v2.x/core-concepts/coordinator-processing.md +46 -0
- package/versioned_docs/version-v2.x/core-concepts/hashing-and-encryption.md +45 -0
- package/versioned_docs/version-v2.x/core-concepts/key-change.md +179 -0
- package/versioned_docs/version-v2.x/core-concepts/maci-keys.md +84 -0
- package/versioned_docs/version-v2.x/core-concepts/maci-messages.md +44 -0
- package/versioned_docs/version-v2.x/core-concepts/merkle-trees.md +23 -0
- package/versioned_docs/version-v2.x/core-concepts/poll-types.md +106 -0
- package/versioned_docs/version-v2.x/core-concepts/spec.md +883 -0
- package/versioned_docs/version-v2.x/core-concepts/state-leaf.md +42 -0
- package/versioned_docs/version-v2.x/core-concepts/workflow.md +142 -0
- package/versioned_docs/version-v2.x/getting-started.md +313 -0
- package/versioned_docs/version-v2.x/guides/_category_.json +4 -0
- package/versioned_docs/version-v2.x/guides/compile-circuits.md +163 -0
- package/versioned_docs/version-v2.x/guides/frontend.md +99 -0
- package/versioned_docs/version-v2.x/guides/integrating.md +73 -0
- package/versioned_docs/version-v2.x/guides/maciWrapper.md +173 -0
- package/versioned_docs/version-v2.x/guides/subgraph.md +79 -0
- package/versioned_docs/version-v2.x/guides/testing/_category_.json +4 -0
- package/versioned_docs/version-v2.x/guides/testing/testing-in-detail.md +203 -0
- package/versioned_docs/version-v2.x/guides/testing/testing.md +163 -0
- package/versioned_docs/version-v2.x/guides/troubleshooting.md +161 -0
- package/versioned_docs/version-v2.x/introduction.md +146 -0
- package/versioned_docs/version-v2.x/processes/_category_.json +4 -0
- package/versioned_docs/version-v2.x/processes/ci-pipeline.md +38 -0
- package/versioned_docs/version-v2.x/processes/versioning.md +94 -0
- package/versioned_docs/version-v2.x/resources.md +33 -0
- package/versioned_docs/version-v2.x/security/_category_.json +4 -0
- package/versioned_docs/version-v2.x/security/audit.md +167 -0
- package/versioned_docs/version-v2.x/security/trusted-setup.md +166 -0
- package/versioned_docs/version-v2.x/supported-networks/_category_.json +4 -0
- package/versioned_docs/version-v2.x/supported-networks/deployed-contracts.md +1108 -0
- package/versioned_docs/version-v2.x/supported-networks/supported-networks.md +47 -0
- package/versioned_docs/version-v2.x/technical-references/_category_.json +4 -0
- package/versioned_docs/version-v2.x/technical-references/smart-contracts/AccQueue.md +21 -0
- package/versioned_docs/version-v2.x/technical-references/smart-contracts/Gatekeepers.md +40 -0
- package/versioned_docs/version-v2.x/technical-references/smart-contracts/MACI.md +152 -0
- package/versioned_docs/version-v2.x/technical-references/smart-contracts/MessageProcessor.md +13 -0
- package/versioned_docs/version-v2.x/technical-references/smart-contracts/Params.md +32 -0
- package/versioned_docs/version-v2.x/technical-references/smart-contracts/Poll.md +104 -0
- package/versioned_docs/version-v2.x/technical-references/smart-contracts/PollFactory.md +43 -0
- package/versioned_docs/version-v2.x/technical-references/smart-contracts/Tally.md +45 -0
- package/versioned_docs/version-v2.x/technical-references/smart-contracts/VkRegistry.md +57 -0
- package/versioned_docs/version-v2.x/technical-references/smart-contracts/VoiceCreditProxy.md +18 -0
- package/versioned_docs/version-v2.x/technical-references/smart-contracts/_category_.json +8 -0
- package/versioned_docs/version-v2.x/technical-references/technical-references.md +47 -0
- package/versioned_docs/version-v2.x/technical-references/typescript-code/_category_.json +4 -0
- package/versioned_docs/version-v2.x/technical-references/typescript-code/cli.md +699 -0
- package/versioned_docs/version-v2.x/technical-references/zk-snark-circuits/_category_.json +4 -0
- package/versioned_docs/version-v2.x/technical-references/zk-snark-circuits/processMessages.md +107 -0
- package/versioned_docs/version-v2.x/technical-references/zk-snark-circuits/setup.md +101 -0
- package/versioned_docs/version-v2.x/technical-references/zk-snark-circuits/tallyVotes.md +79 -0
- package/versioned_docs/version-v2.x/technical-references/zk-snark-circuits/utilities.md +131 -0
- package/versioned_docs/version-v2.x/technical-references/zk-snark-circuits/zk-snark-circuits.md +37 -0
- package/versioned_docs/version-v2.x/use-cases/_category_.json +4 -0
- package/versioned_docs/version-v2.x/use-cases/governance.md +18 -0
- package/versioned_docs/version-v2.x/use-cases/polling.md +10 -0
- package/versioned_docs/version-v2.x/use-cases/public-goods.md +65 -0
- package/versioned_docs/version-v3.x/case-studies.md +35 -0
- package/versioned_docs/version-v3.x/contributing/_category_.json +4 -0
- package/versioned_docs/version-v3.x/contributing/code-of-conduct.md +92 -0
- package/versioned_docs/version-v3.x/contributing/contributing.md +149 -0
- package/versioned_docs/version-v3.x/contributing/project-ideas.md +78 -0
- package/versioned_docs/version-v3.x/core-concepts/_category_.json +4 -0
- package/versioned_docs/version-v3.x/core-concepts/ballot.md +19 -0
- package/versioned_docs/version-v3.x/core-concepts/coordinator-processing.md +46 -0
- package/versioned_docs/version-v3.x/core-concepts/coordinator-service.md +16 -0
- package/versioned_docs/version-v3.x/core-concepts/hashing-and-encryption.md +45 -0
- package/versioned_docs/version-v3.x/core-concepts/key-change.md +179 -0
- package/versioned_docs/version-v3.x/core-concepts/maci-keys.md +84 -0
- package/versioned_docs/version-v3.x/core-concepts/maci-messages.md +44 -0
- package/versioned_docs/version-v3.x/core-concepts/merkle-trees.md +16 -0
- package/versioned_docs/version-v3.x/core-concepts/offchain-voting.md +14 -0
- package/versioned_docs/version-v3.x/core-concepts/poll-types.md +58 -0
- package/versioned_docs/version-v3.x/core-concepts/polls.md +81 -0
- package/versioned_docs/version-v3.x/core-concepts/spec.md +883 -0
- package/versioned_docs/version-v3.x/core-concepts/state-leaf.md +42 -0
- package/versioned_docs/version-v3.x/core-concepts/workflow.md +149 -0
- package/versioned_docs/version-v3.x/guides/_category_.json +4 -0
- package/versioned_docs/version-v3.x/guides/compile-circuits.md +175 -0
- package/versioned_docs/version-v3.x/guides/integrating.md +137 -0
- package/versioned_docs/version-v3.x/guides/subgraph.md +79 -0
- package/versioned_docs/version-v3.x/guides/testing/_category_.json +4 -0
- package/versioned_docs/version-v3.x/guides/testing/testing-in-detail.md +191 -0
- package/versioned_docs/version-v3.x/guides/testing/testing-introduction.md +158 -0
- package/versioned_docs/version-v3.x/guides/troubleshooting.md +161 -0
- package/versioned_docs/version-v3.x/introduction.md +153 -0
- package/versioned_docs/version-v3.x/processes/_category_.json +4 -0
- package/versioned_docs/version-v3.x/processes/ci-pipeline.md +38 -0
- package/versioned_docs/version-v3.x/processes/versioning.md +94 -0
- package/versioned_docs/version-v3.x/quick-start.md +318 -0
- package/versioned_docs/version-v3.x/resources.md +33 -0
- package/versioned_docs/version-v3.x/security/_category_.json +4 -0
- package/versioned_docs/version-v3.x/security/audit.md +167 -0
- package/versioned_docs/version-v3.x/security/trusted-setup.md +172 -0
- package/versioned_docs/version-v3.x/supported-networks/_category_.json +4 -0
- package/versioned_docs/version-v3.x/supported-networks/deployed-contracts.md +112 -0
- package/versioned_docs/version-v3.x/supported-networks/supported-networks.md +53 -0
- package/versioned_docs/version-v3.x/technical-references/_category_.json +4 -0
- package/versioned_docs/version-v3.x/technical-references/coordinator-service/_category_.json +8 -0
- package/versioned_docs/version-v3.x/technical-references/coordinator-service/index.md +10 -0
- package/versioned_docs/version-v3.x/technical-references/coordinator-service/installation.md +43 -0
- package/versioned_docs/version-v3.x/technical-references/offchain-relayer/_category_.json +8 -0
- package/versioned_docs/version-v3.x/technical-references/offchain-relayer/index.md +51 -0
- package/versioned_docs/version-v3.x/technical-references/offchain-relayer/installation.md +109 -0
- package/versioned_docs/version-v3.x/technical-references/smart-contracts/MACI.md +160 -0
- package/versioned_docs/version-v3.x/technical-references/smart-contracts/MessageProcessor.md +13 -0
- package/versioned_docs/version-v3.x/technical-references/smart-contracts/Params.md +33 -0
- package/versioned_docs/version-v3.x/technical-references/smart-contracts/Policies.md +39 -0
- package/versioned_docs/version-v3.x/technical-references/smart-contracts/Poll.md +170 -0
- package/versioned_docs/version-v3.x/technical-references/smart-contracts/PollFactory.md +33 -0
- package/versioned_docs/version-v3.x/technical-references/smart-contracts/Tally.md +43 -0
- package/versioned_docs/version-v3.x/technical-references/smart-contracts/VkRegistry.md +62 -0
- package/versioned_docs/version-v3.x/technical-references/smart-contracts/VoiceCreditProxy.md +18 -0
- package/versioned_docs/version-v3.x/technical-references/smart-contracts/_category_.json +8 -0
- package/versioned_docs/version-v3.x/technical-references/technical-references.md +48 -0
- package/versioned_docs/version-v3.x/technical-references/zk-snark-circuits/_category_.json +4 -0
- package/versioned_docs/version-v3.x/technical-references/zk-snark-circuits/joinPoll.md +53 -0
- package/versioned_docs/version-v3.x/technical-references/zk-snark-circuits/processMessages.md +106 -0
- package/versioned_docs/version-v3.x/technical-references/zk-snark-circuits/setup.md +96 -0
- package/versioned_docs/version-v3.x/technical-references/zk-snark-circuits/tallyVotes.md +79 -0
- package/versioned_docs/version-v3.x/technical-references/zk-snark-circuits/utilities.md +131 -0
- package/versioned_docs/version-v3.x/technical-references/zk-snark-circuits/zk-snark-circuits.md +42 -0
- package/versioned_docs/version-v3.x/use-cases/_category_.json +4 -0
- package/versioned_docs/version-v3.x/use-cases/governance.md +18 -0
- package/versioned_docs/version-v3.x/use-cases/polling.md +10 -0
- package/versioned_docs/version-v3.x/use-cases/public-goods.md +65 -0
- package/versioned_sidebars/version-v0.x-sidebars.json +8 -0
- package/versioned_sidebars/version-v1.2-sidebars.json +8 -0
- package/versioned_sidebars/version-v2.x-sidebars.json +8 -0
- package/versioned_sidebars/version-v3.x-sidebars.json +8 -0
- package/versions.json +1 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1726.2398646666636 556.7500946281539" width="3452.479729333327" height="1113.5001892563077">
|
|
2
|
+
<!-- svg-source:excalidraw -->
|
|
3
|
+
|
|
4
|
+
<defs>
|
|
5
|
+
<style class="style-fonts">
|
|
6
|
+
@font-face {
|
|
7
|
+
font-family: "Virgil";
|
|
8
|
+
src: url("https://excalidraw.com/Virgil.woff2");
|
|
9
|
+
}
|
|
10
|
+
@font-face {
|
|
11
|
+
font-family: "Cascadia";
|
|
12
|
+
src: url("https://excalidraw.com/Cascadia.woff2");
|
|
13
|
+
}
|
|
14
|
+
@font-face {
|
|
15
|
+
font-family: "Assistant";
|
|
16
|
+
src: url("https://excalidraw.com/Assistant-Regular.woff2");
|
|
17
|
+
}
|
|
18
|
+
</style>
|
|
19
|
+
|
|
20
|
+
</defs>
|
|
21
|
+
<rect x="0" y="0" width="1726.2398646666636" height="556.7500946281539" fill="#ffffff"></rect><g stroke-linecap="round" transform="translate(317.5090062381055 179.7013599994475) rotate(0 114.33810379333909 33.80052213620306)"><path d="M16.9 0 C72.55 2.34, 132.99 1.53, 211.78 0 M16.9 0 C88.23 1.51, 160.2 1.11, 211.78 0 M211.78 0 C221.4 -0.9, 228.03 4.57, 228.68 16.9 M211.78 0 C223.53 -2.05, 229.36 5.89, 228.68 16.9 M228.68 16.9 C227.3 25.43, 228.65 30.07, 228.68 50.7 M228.68 16.9 C228.34 24.66, 229.43 31.74, 228.68 50.7 M228.68 50.7 C227.41 60.67, 222.15 66.99, 211.78 67.6 M228.68 50.7 C228.29 60.16, 224.61 68.44, 211.78 67.6 M211.78 67.6 C169.85 65.81, 125.64 65.97, 16.9 67.6 M211.78 67.6 C169.39 69.18, 125.54 68.43, 16.9 67.6 M16.9 67.6 C6.67 68.07, -1.92 61.77, 0 50.7 M16.9 67.6 C5.51 68.88, 2.29 62.3, 0 50.7 M0 50.7 C-1.87 43.4, 0.28 35.31, 0 16.9 M0 50.7 C1.28 40.31, 0.13 30.36, 0 16.9 M0 16.9 C1.02 7.57, 5.31 1.13, 16.9 0 M0 16.9 C-1.1 7.63, 7.74 0.04, 16.9 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(372.0971710666008 201.0018821356506) rotate(0 59.74993896484375 12.5)"><text x="59.74993896484375" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#e03131" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">QuinSelector</text></g><g stroke-linecap="round" transform="translate(448.72075975248936 34.1101000361009) rotate(0 110.05757116156974 32.177416550875904)"><path d="M16.09 0 C84.07 1.21, 147.39 -0.83, 204.03 0 M16.09 0 C64.24 1.04, 113.7 0.96, 204.03 0 M204.03 0 C215.18 -1.78, 220.71 5.58, 220.12 16.09 M204.03 0 C212.68 -0.47, 220.72 3.86, 220.12 16.09 M220.12 16.09 C218.72 29.08, 218.34 38.96, 220.12 48.27 M220.12 16.09 C219.67 25.06, 219.86 35.02, 220.12 48.27 M220.12 48.27 C219.78 57.42, 216.11 65.08, 204.03 64.35 M220.12 48.27 C218.22 57.46, 214.31 64.92, 204.03 64.35 M204.03 64.35 C159.38 62.49, 119.59 63.98, 16.09 64.35 M204.03 64.35 C148.75 63.12, 91.48 62.79, 16.09 64.35 M16.09 64.35 C5.26 65.47, 1.99 59.28, 0 48.27 M16.09 64.35 C4.19 65.33, -2.13 57, 0 48.27 M0 48.27 C-0.16 35.11, -1.64 27.36, 0 16.09 M0 48.27 C0.56 40.87, -0.11 32.11, 0 16.09 M0 16.09 C-0.96 7.1, 7.19 0.03, 16.09 0 M0 16.09 C-0.34 5.39, 4.09 2.09, 16.09 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(456.27841483739894 41.28751658697689) rotate(0 102.49991607666016 25)"><text x="102.49991607666016" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">inputs (array of len </text><text x="102.49991607666016" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">choices)</text></g><g stroke-linecap="round"><g transform="translate(419.09219601778295 130.03175380389303) rotate(0 -0.4458028198948796 19.782500132839004)"><path d="M-0.16 -0.22 C-0.37 6.39, -0.66 32.54, -0.86 39.13 M0.76 -0.8 C0.45 5.91, -1.1 32.84, -1.27 39.6" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(419.09219601778295 130.03175380389303) rotate(0 -0.4458028198948796 19.782500132839004)"><path d="M-7.22 20.73 C-5.48 27.85, -3.65 34.02, -1.27 39.6 M-7.22 20.73 C-5.63 25.12, -4.07 30.43, -1.27 39.6" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(419.09219601778295 130.03175380389303) rotate(0 -0.4458028198948796 19.782500132839004)"><path d="M6.3 21.32 C2.99 28.2, -0.23 34.15, -1.27 39.6 M6.3 21.32 C4.45 25.52, 2.56 30.68, -1.27 39.6" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g></g><mask></mask><g stroke-linecap="round" transform="translate(10 183.09761534237714) rotate(0 110.05757116156974 32.177416550875904)"><path d="M16.09 0 C65.52 -1.77, 117.23 -0.77, 204.03 0 M16.09 0 C62.77 1.79, 107.96 1.47, 204.03 0 M204.03 0 C215.28 -1.3, 221.54 5.4, 220.12 16.09 M204.03 0 C213.57 -1.61, 221.31 3.31, 220.12 16.09 M220.12 16.09 C218.69 22.82, 218.81 31.19, 220.12 48.27 M220.12 16.09 C220.74 25.12, 219.24 32.76, 220.12 48.27 M220.12 48.27 C219.73 59.49, 213.33 63.06, 204.03 64.35 M220.12 48.27 C218.67 57.14, 213.96 66.25, 204.03 64.35 M204.03 64.35 C138.53 64.17, 76.62 61.21, 16.09 64.35 M204.03 64.35 C150.49 65.55, 94.45 65.82, 16.09 64.35 M16.09 64.35 C3.51 62.62, 1.11 59.42, 0 48.27 M16.09 64.35 C7.02 64.25, -1.98 57.19, 0 48.27 M0 48.27 C-0.61 36.46, 2.06 22.29, 0 16.09 M0 48.27 C1.07 36.82, 0.01 25.35, 0 16.09 M0 16.09 C-1.11 7.18, 7.2 -1.97, 16.09 0 M0 16.09 C0.91 3.21, 4.75 0.94, 16.09 0" stroke="#f08c00" stroke-width="1" fill="none"></path></g><g transform="translate(29.237655390085365 202.77503189325307) rotate(0 90.81991577148438 12.5)"><text x="90.81991577148438" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#f08c00" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">parameter: choices</text></g><g transform="translate(464.49391098097476 132.57860880273734) rotate(0 31.809967041015625 12.5)"><text x="0" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="start" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">Inputs</text></g><g transform="translate(475.78014709297713 281.1455165092334) rotate(0 34.84996032714844 12.5)"><text x="0" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="start" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">Output</text></g><g stroke-linecap="round"><g transform="translate(414.7992799743497 279.87516273914434) rotate(0 0.2229014099473261 20.511057519056408)"><path d="M0.16 0.06 C0.14 6.96, -0.12 34.14, -0.05 40.91 M-0.42 -0.38 C-0.29 6.64, 0.81 34.64, 0.93 41.55" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(414.7992799743497 279.87516273914434) rotate(0 0.2229014099473261 20.511057519056408)"><path d="M-6.66 22.49 C-4.19 27.7, -2.07 34.99, 0.93 41.55 M-6.66 22.49 C-5.06 26.62, -2.76 31, 0.93 41.55" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(414.7992799743497 279.87516273914434) rotate(0 0.2229014099473261 20.511057519056408)"><path d="M7.37 22.07 C5.33 27.44, 2.94 34.86, 0.93 41.55 M7.37 22.07 C5.67 26.3, 4.68 30.78, 0.93 41.55" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g></g><mask></mask><g stroke-linecap="round" transform="translate(318.2396275262663 346.7732951060366) rotate(0 110.05757116156974 32.177416550875904)"><path d="M16.09 0 C77.67 2.22, 138.76 3.12, 204.03 0 M16.09 0 C73.38 0.42, 129.11 1.31, 204.03 0 M204.03 0 C215.92 -1.42, 218.85 4.06, 220.12 16.09 M204.03 0 C213.72 -0.7, 219.73 3.56, 220.12 16.09 M220.12 16.09 C218.9 27.55, 220.73 38.36, 220.12 48.27 M220.12 16.09 C219.57 24.48, 220.32 31.19, 220.12 48.27 M220.12 48.27 C218.81 57.43, 215.79 64.82, 204.03 64.35 M220.12 48.27 C217.91 58.77, 214.63 65.64, 204.03 64.35 M204.03 64.35 C129.77 61.54, 52.09 64.5, 16.09 64.35 M204.03 64.35 C142.8 63.48, 84.29 63.87, 16.09 64.35 M16.09 64.35 C5.04 63.62, 1.02 60.93, 0 48.27 M16.09 64.35 C4.99 65.65, -1.1 60.99, 0 48.27 M0 48.27 C0.02 34.56, 1.82 24.9, 0 16.09 M0 48.27 C-0.39 42.18, -0.8 34.49, 0 16.09 M0 16.09 C1.82 6.6, 6.15 1.96, 16.09 0 M0 16.09 C1.49 5.33, 6.15 2.09, 16.09 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(339.257274066254 353.9507116569125) rotate(0 89.03992462158203 25)"><text x="89.03992462158203" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#2f9e44" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">out (the item at </text><text x="89.03992462158203" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#2f9e44" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">position index)</text></g><g stroke-linecap="round"><g transform="translate(245.4148474337021 216.5587789023955) rotate(0 24.285934174555905 -0.22909311577939206)"><path d="M0.39 0.01 C8.42 -0.07, 40.21 -0.68, 48.29 -0.84 M-0.07 -0.46 C8.12 -0.45, 41.26 -0.32, 49.38 -0.34" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(245.4148474337021 216.5587789023955) rotate(0 24.285934174555905 -0.22909311577939206)"><path d="M26.55 7.94 C34.04 4.64, 40.77 2.98, 49.38 -0.34 M26.55 7.94 C31.68 5.84, 35.88 4.12, 49.38 -0.34" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(245.4148474337021 216.5587789023955) rotate(0 24.285934174555905 -0.22909311577939206)"><path d="M26.56 -8.67 C34 -6.55, 40.72 -2.8, 49.38 -0.34 M26.56 -8.67 C31.65 -7.27, 35.85 -5.48, 49.38 -0.34" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g></g><mask></mask><g stroke-linecap="round" transform="translate(734.4733671384581 26.24845491581698) rotate(0 178.05165552974745 52.21168965587836)"><path d="M26.11 0 C137.96 1.89, 250.55 0.39, 330 0 M26.11 0 C116.51 1.1, 207.51 1.35, 330 0 M330 0 C347.06 -1.57, 357.46 9.43, 356.1 26.11 M330 0 C345.51 -1.53, 355.66 9.27, 356.1 26.11 M356.1 26.11 C354.16 37.37, 357.42 50.83, 356.1 78.32 M356.1 26.11 C356.28 41.84, 354.8 57.01, 356.1 78.32 M356.1 78.32 C356 96.84, 349.39 104.72, 330 104.42 M356.1 78.32 C354.93 96.69, 345.27 102.43, 330 104.42 M330 104.42 C221.92 104.76, 112.83 107.45, 26.11 104.42 M330 104.42 C251.41 104.31, 171.96 104.02, 26.11 104.42 M26.11 104.42 C7.75 106.16, 1.83 95.76, 0 78.32 M26.11 104.42 C8.36 104.45, -1.27 97.82, 0 78.32 M0 78.32 C-1.36 57.33, 1.33 36.06, 0 26.11 M0 78.32 C-0.08 67.76, 0.17 55.23, 0 26.11 M0 26.11 C0.69 10.52, 10.19 1.5, 26.11 0 M0 26.11 C1.2 9.74, 10.04 -2.15, 26.11 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(744.7251569455493 53.46014457169531) rotate(0 167.79986572265625 25)"><text x="167.79986572265625" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">1. Ensure that index is less than </text><text x="167.79986572265625" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">choices </text></g><g stroke-linecap="round" transform="translate(738.3629707328478 166.0304267959442) rotate(0 154.0961636167916 74.82411558956784)"><path d="M32 0 C117.97 2, 202.79 -0.01, 276.19 0 M32 0 C89.23 -0.03, 147.31 0.92, 276.19 0 M276.19 0 C295.88 -1.33, 307.81 11.16, 308.19 32 M276.19 0 C295.89 -1.49, 306.75 8.82, 308.19 32 M308.19 32 C308.84 53.44, 307.34 78.53, 308.19 117.65 M308.19 32 C307.32 60.24, 308.37 87.51, 308.19 117.65 M308.19 117.65 C307.17 139.83, 295.67 147.92, 276.19 149.65 M308.19 117.65 C309.47 139.47, 299.18 149.54, 276.19 149.65 M276.19 149.65 C223.26 151.37, 171.05 152.48, 32 149.65 M276.19 149.65 C178.91 151.5, 83.17 150.8, 32 149.65 M32 149.65 C10.37 149.67, -1.11 140.8, 0 117.65 M32 149.65 C12.78 147.39, 0.91 136.83, 0 117.65 M0 117.65 C-1.93 96.05, 0.89 71.58, 0 32 M0 117.65 C-0.21 84.49, 0.19 50.26, 0 32 M0 32 C1.04 11.57, 11.83 -1.87, 32 0 M0 32 C1.98 10.57, 8.71 2.27, 32 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(746.8692600820614 190.85454238551205) rotate(0 145.58987426757812 50)"><text x="145.58987426757812" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">2. Loop through the input </text><text x="145.58987426757812" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">array and for each item </text><text x="145.58987426757812" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">check whether it matches the</text><text x="145.58987426757812" y="75" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">input index</text></g><g transform="translate(602.5904103336552 158.1012293469214) rotate(0 49.669944763183594 12.5)"><text x="0" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="start" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">Processing</text></g><g stroke-linecap="round"><g transform="translate(585.4137980735959 218.7355504839138) rotate(0 54.0494641083767 -0.8482636989667753)"><path d="M-0.23 0.3 C17.81 0.02, 89.32 -1.98, 107.25 -2.47 M-1.81 -0.59 C16.69 -0.67, 90.9 -1.14, 109.51 -1.35" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(585.4137980735959 218.7355504839138) rotate(0 54.0494641083767 -0.8482636989667753)"><path d="M86.09 7.4 C91.74 4.12, 95.05 2.38, 109.51 -1.35 M86.09 7.4 C91.67 5.26, 95.76 2.59, 109.51 -1.35" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(585.4137980735959 218.7355504839138) rotate(0 54.0494641083767 -0.8482636989667753)"><path d="M85.95 -9.7 C91.52 -9.26, 94.85 -7.27, 109.51 -1.35 M85.95 -9.7 C91.5 -8.09, 95.62 -7.01, 109.51 -1.35" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g></g><mask></mask><g stroke-linecap="round" transform="translate(205.81880349909534 33.45182312782447) rotate(0 110.05757116156974 32.177416550875904)"><path d="M16.09 0 C61.8 1.78, 107.24 0.5, 204.03 0 M16.09 0 C65.95 0.51, 117.25 2.04, 204.03 0 M204.03 0 C213.8 0.53, 219.65 5.46, 220.12 16.09 M204.03 0 C213.39 1.83, 220.01 6.95, 220.12 16.09 M220.12 16.09 C221.28 28.81, 218.68 42.51, 220.12 48.27 M220.12 16.09 C219.9 27.03, 220.83 37.38, 220.12 48.27 M220.12 48.27 C219.45 58.57, 216.19 62.61, 204.03 64.35 M220.12 48.27 C222.21 58.52, 213.17 62.33, 204.03 64.35 M204.03 64.35 C128.58 61.75, 55.69 62.95, 16.09 64.35 M204.03 64.35 C157.94 63.52, 109.97 62.85, 16.09 64.35 M16.09 64.35 C6.84 65.63, -0.15 58.73, 0 48.27 M16.09 64.35 C6.75 62.25, 0.19 56.91, 0 48.27 M0 48.27 C-0.2 40.4, 0.37 31.16, 0 16.09 M0 48.27 C0.24 39.33, 0.55 31.4, 0 16.09 M0 16.09 C-0.03 6.7, 3.54 1.27, 16.09 0 M0 16.09 C0.45 7.63, 4.34 0.74, 16.09 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(292.23639815920023 53.129239678700344) rotate(0 23.639976501464844 12.5)"><text x="23.639976501464844" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">index</text></g><g stroke-linecap="round" transform="translate(723.947119801767 359.9838907767633) rotate(0 149.3561462454919 88.4394586727388)"><path d="M32 0 C123.15 0.75, 214.76 -0.03, 266.71 0 M32 0 C125.29 -1.79, 217.2 -0.78, 266.71 0 M266.71 0 C288.1 1.33, 300.39 10.53, 298.71 32 M266.71 0 C286.59 -1.54, 297.89 9.01, 298.71 32 M298.71 32 C300.84 71.54, 299.03 111.73, 298.71 144.88 M298.71 32 C298.21 69.3, 298.49 103.87, 298.71 144.88 M298.71 144.88 C296.94 166.01, 288.48 175.76, 266.71 176.88 M298.71 144.88 C299.18 165.37, 290.32 178.62, 266.71 176.88 M266.71 176.88 C209.64 176.38, 152.63 177.3, 32 176.88 M266.71 176.88 C201.31 179.24, 135.27 177.9, 32 176.88 M32 176.88 C9.72 178.71, -1.72 167.62, 0 144.88 M32 176.88 C12.63 175.81, -1.99 165.84, 0 144.88 M0 144.88 C0.16 117.5, -1.89 89.75, 0 32 M0 144.88 C0.47 120.83, 1.12 98.02, 0 32 M0 32 C-1.21 9.75, 10.68 -1.51, 32 0 M0 32 C-1.08 9.95, 9.95 -0.54, 32 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(729.7733893382745 398.4233494495021) rotate(0 143.52987670898438 50)"><text x="143.52987670898438" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">3. Wire the output (sum) of </text><text x="143.52987670898438" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">the CalculateTotal </text><text x="143.52987670898438" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">component to the output </text><text x="143.52987670898438" y="75" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">signal</text></g><g stroke-linecap="round"><g transform="translate(1060.9039681230076 238.5598272552744) rotate(0 69.55589745407633 -62.070266139203596)"><path d="M0.59 1.12 C23.92 -19.56, 115.91 -102.67, 138.93 -123.55 M-0.56 0.66 C22.7 -20.42, 114.83 -104.78, 137.89 -125.36" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(1060.9039681230076 238.5598272552744) rotate(0 69.55589745407633 -62.070266139203596)"><path d="M126.22 -103.26 C130.46 -108.3, 132.05 -113.26, 137.89 -125.36 M126.22 -103.26 C130.64 -109.97, 133.1 -116.09, 137.89 -125.36" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(1060.9039681230076 238.5598272552744) rotate(0 69.55589745407633 -62.070266139203596)"><path d="M114.74 -115.93 C121.47 -118.34, 125.49 -120.62, 137.89 -125.36 M114.74 -115.93 C122.61 -118.96, 128.48 -121.31, 137.89 -125.36" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g></g><mask></mask><g stroke-linecap="round" transform="translate(1243.3779812011612 10) rotate(0 110.05757116156974 55)"><path d="M27.5 0 C67.69 -2.39, 112.69 1.47, 192.62 0 M27.5 0 C79.22 -1.28, 131.29 -0.57, 192.62 0 M192.62 0 C209.16 0.01, 220.67 8.56, 220.12 27.5 M192.62 0 C209.39 -0.77, 220.99 9.86, 220.12 27.5 M220.12 27.5 C217.82 40.86, 220.14 54, 220.12 82.5 M220.12 27.5 C219.69 43.25, 218.8 57.93, 220.12 82.5 M220.12 82.5 C219.84 99.98, 212.63 111.75, 192.62 110 M220.12 82.5 C220.26 101.92, 209.03 112.23, 192.62 110 M192.62 110 C149.12 111.96, 107.13 111.8, 27.5 110 M192.62 110 C151.9 109.98, 110.51 109.61, 27.5 110 M27.5 110 C10.59 108.73, 0.57 99.33, 0 82.5 M27.5 110 C10.07 108.67, 1.96 98.61, 0 82.5 M0 82.5 C0.5 68.99, -0.06 56.59, 0 27.5 M0 82.5 C0.38 60.86, 0.92 39.92, 0 27.5 M0 27.5 C-1.71 7.21, 11.15 -0.95, 27.5 0 M0 27.5 C-1.99 8.6, 9.79 -0.7, 27.5 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(1251.745641474059 15) rotate(0 101.68991088867188 50)"><text x="101.68991088867188" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">Use IsEqual to </text><text x="101.68991088867188" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">compare the loop </text><text x="101.68991088867188" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">index with the input </text><text x="101.68991088867188" y="75" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">index</text></g><g stroke-linecap="round" transform="translate(1233.229069014411 137.75945762091044) rotate(0 241.50539782612634 93.32989037301348)"><path d="M32 0 C162.97 -1.7, 296.47 -0.8, 451.01 0 M32 0 C142.91 1.25, 252.89 1.29, 451.01 0 M451.01 0 C471.9 -0.64, 482.57 9.19, 483.01 32 M451.01 0 C473.13 0.24, 482.03 9.08, 483.01 32 M483.01 32 C482.92 68.55, 482.78 106.39, 483.01 154.66 M483.01 32 C484.37 68.76, 482.67 106.25, 483.01 154.66 M483.01 154.66 C484.01 174.83, 470.66 187.78, 451.01 186.66 M483.01 154.66 C481.01 176.93, 470.31 184.93, 451.01 186.66 M451.01 186.66 C354.71 185.98, 260.11 186.75, 32 186.66 M451.01 186.66 C296.34 186.57, 141.26 185.79, 32 186.66 M32 186.66 C9.54 186.54, 0.93 176.06, 0 154.66 M32 186.66 C9.92 188.4, 1.55 176.61, 0 154.66 M0 154.66 C-1.28 123.32, 0.94 94.25, 0 32 M0 154.66 C1.65 117.85, 1.17 80.48, 0 32 M0 32 C-1.36 11.34, 12.44 -0.28, 32 0 M0 32 C-2.18 10.59, 12.15 -1.4, 32 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(1239.764663984092 181.08934799392392) rotate(0 234.9698028564453 50)"><text x="234.9698028564453" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">Multiply the output of IsEqual (1 if it matches</text><text x="234.9698028564453" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">0 if not) with the input item at index i </text><text x="234.9698028564453" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">(current loop index)</text><text x="234.9698028564453" y="75" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">and assign it to the CalculateTotal component</text></g><g stroke-linecap="round" transform="translate(1094.369839086374 342.24846313445687) rotate(0 226.14668123457614 102.2508157468485)"><path d="M32 0 C121.02 -2.44, 210.28 -1.92, 420.29 0 M32 0 C186.64 0.92, 340.7 0.91, 420.29 0 M420.29 0 C440.73 -0.46, 450.8 11.2, 452.29 32 M420.29 0 C439.34 1.49, 452.65 8.45, 452.29 32 M452.29 32 C453.07 86.53, 453.06 142.61, 452.29 172.5 M452.29 32 C450.93 73.67, 452.36 115.16, 452.29 172.5 M452.29 172.5 C451.05 193.34, 440.1 205.89, 420.29 204.5 M452.29 172.5 C454.01 195.25, 439.65 203.28, 420.29 204.5 M420.29 204.5 C282.44 206.35, 143.38 205.9, 32 204.5 M420.29 204.5 C330.97 203.62, 242.31 203.3, 32 204.5 M32 204.5 C8.81 205.18, 0.23 193.6, 0 172.5 M32 204.5 C11.73 203.02, -0.23 195.84, 0 172.5 M0 172.5 C-0.75 142.74, -0.69 108.36, 0 32 M0 172.5 C0.26 124.38, 0.47 75.12, 0 32 M0 32 C-0.61 9.45, 9.1 -1.2, 32 0 M0 32 C-1.61 9.73, 12.92 1.28, 32 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(1099.4166820641142 381.9992788813054) rotate(0 221.09983825683594 62.5)"><text x="221.09983825683594" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">Because only 1 input to CalculateTotal </text><text x="221.09983825683594" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">would have been not 0 (as the index </text><text x="221.09983825683594" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">matched in the step above) we can use the </text><text x="221.09983825683594" y="75" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">sum as the actual number we were looking </text><text x="221.09983825683594" y="100" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">for</text></g><g stroke-linecap="round"><g transform="translate(1041.9300550680268 435.0304946454992) rotate(0 19.22936613285583 2.9515384436173733)"><path d="M-0.31 0.27 C6.03 1.3, 31.84 5.41, 38.25 6.35 M0.53 -0.07 C6.77 0.81, 31.26 4.51, 37.72 5.61" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(1041.9300550680268 435.0304946454992) rotate(0 19.22936613285583 2.9515384436173733)"><path d="M18.62 9.3 C25.36 7.78, 31.96 6.35, 37.72 5.61 M18.62 9.3 C24.18 7.75, 29.85 7.18, 37.72 5.61" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(1041.9300550680268 435.0304946454992) rotate(0 19.22936613285583 2.9515384436173733)"><path d="M20.71 -3.84 C26.78 -1.05, 32.69 1.85, 37.72 5.61 M20.71 -3.84 C25.67 -1.44, 30.71 1.94, 37.72 5.61" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g></g><mask></mask></svg>
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1612.2808342448166 1968.5076951335047" width="4836.842502734449" height="5905.523085400514">
|
|
2
|
+
<!-- svg-source:excalidraw -->
|
|
3
|
+
|
|
4
|
+
<defs>
|
|
5
|
+
<style class="style-fonts">
|
|
6
|
+
@font-face {
|
|
7
|
+
font-family: "Virgil";
|
|
8
|
+
src: url("https://excalidraw.com/Virgil.woff2");
|
|
9
|
+
}
|
|
10
|
+
@font-face {
|
|
11
|
+
font-family: "Cascadia";
|
|
12
|
+
src: url("https://excalidraw.com/Cascadia.woff2");
|
|
13
|
+
}
|
|
14
|
+
@font-face {
|
|
15
|
+
font-family: "Assistant";
|
|
16
|
+
src: url("https://excalidraw.com/Assistant-Regular.woff2");
|
|
17
|
+
}
|
|
18
|
+
</style>
|
|
19
|
+
|
|
20
|
+
</defs>
|
|
21
|
+
<rect x="0" y="0" width="1612.2808342448166" height="1968.5076951335047" fill="#ffffff"></rect><g stroke-linecap="round" transform="translate(604.972089273273 461.5031559281699) rotate(0 127.89348496577497 33.80052213620297)"><path d="M16.9 0 C91.35 -0.07, 162.53 -0.36, 238.89 0 M16.9 0 C82.51 -0.06, 148.69 0.37, 238.89 0 M238.89 0 C250.21 -0.71, 254.83 4.27, 255.79 16.9 M238.89 0 C250.38 -1.8, 256.6 3.42, 255.79 16.9 M255.79 16.9 C255.35 31.2, 254.26 44.82, 255.79 50.7 M255.79 16.9 C254.96 26.7, 256.61 34.64, 255.79 50.7 M255.79 50.7 C254.53 61.33, 251.89 66.63, 238.89 67.6 M255.79 50.7 C255.05 62.63, 247.98 66.67, 238.89 67.6 M238.89 67.6 C174.19 67.6, 108.95 69.84, 16.9 67.6 M238.89 67.6 C188.99 67.21, 139.65 66.19, 16.9 67.6 M16.9 67.6 C4.72 68.03, -0.07 62.62, 0 50.7 M16.9 67.6 C3.41 68.79, -0.35 63.28, 0 50.7 M0 50.7 C-1.26 40.43, 0.8 31.11, 0 16.9 M0 50.7 C-0.17 41.85, 0.47 31.37, 0 16.9 M0 16.9 C-0.74 6.67, 5.41 0.44, 16.9 0 M0 16.9 C-0.86 4.83, 5.64 0.18, 16.9 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(612.6757014973487 482.8036780643731) rotate(0 120.18987274169922 12.5)"><text x="120.18987274169922" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#e03131" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">ResultCommitmentVerifier</text></g><g stroke-linecap="round" transform="translate(13.660285564443484 17.772808320453123) rotate(0 110.05757116156974 32.17741655087593)"><path d="M16.09 0 C68.84 0.9, 121.79 -0.92, 204.03 0 M16.09 0 C74.01 -1.46, 131.41 -1.79, 204.03 0 M204.03 0 C214.95 -1.56, 220.82 3.44, 220.12 16.09 M204.03 0 C216.88 0.18, 218.84 4.83, 220.12 16.09 M220.12 16.09 C219.38 28.26, 220.68 36.8, 220.12 48.27 M220.12 16.09 C219.71 26.99, 221.2 38.05, 220.12 48.27 M220.12 48.27 C219.48 59.57, 212.86 63.55, 204.03 64.35 M220.12 48.27 C219.92 57.84, 216.7 64.42, 204.03 64.35 M204.03 64.35 C163.78 65.23, 125.97 63.43, 16.09 64.35 M204.03 64.35 C141.21 62.95, 79.28 63.07, 16.09 64.35 M16.09 64.35 C3.43 65.39, -0.3 60.14, 0 48.27 M16.09 64.35 C5.01 65.7, -0.52 57.77, 0 48.27 M0 48.27 C-0.47 41.11, 0.01 31.21, 0 16.09 M0 48.27 C-0.6 36.68, -0.34 24.27, 0 16.09 M0 16.09 C-0.75 4.66, 5.37 0.16, 16.09 0 M0 16.09 C0.43 5.17, 3.8 0.54, 16.09 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(63.23791440423588 37.450224871329056) rotate(0 60.479942321777344 12.5)"><text x="60.479942321777344" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">isFirstBatch</text></g><g stroke-linecap="round"><g transform="translate(701.4929553139748 226.9135889552988) rotate(0 3.3473253415148747 94.6017641396279)"><path d="M-0.96 0.1 C-0.05 31.73, 4.3 158.46, 5.58 189.91 M0.74 -0.9 C1.99 30.39, 6.83 156.36, 7.7 188.16" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(701.4929553139748 226.9135889552988) rotate(0 3.3473253415148747 94.6017641396279)"><path d="M-3.51 160.33 C0.17 167.22, 4.67 177.8, 7.7 188.16 M-3.51 160.33 C-0.57 166.99, 2.64 174.17, 7.7 188.16" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(701.4929553139748 226.9135889552988) rotate(0 3.3473253415148747 94.6017641396279)"><path d="M17 159.64 C14.29 166.58, 12.41 177.38, 7.7 188.16 M17 159.64 C14.51 166.34, 12.3 173.7, 7.7 188.16" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g></g><mask></mask><g stroke-linecap="round" transform="translate(294.6523168749395 466.80243527689095) rotate(0 110.05757116156974 32.17741655087593)"><path d="M16.09 0 C58.67 1.81, 98.19 0.8, 204.03 0 M16.09 0 C60 0.51, 104.13 1.54, 204.03 0 M204.03 0 C213.64 -0.46, 221.16 3.81, 220.12 16.09 M204.03 0 C216.35 -0.56, 221.09 6.3, 220.12 16.09 M220.12 16.09 C218.47 21.36, 219.63 30.88, 220.12 48.27 M220.12 16.09 C219.07 23.78, 219.93 31.77, 220.12 48.27 M220.12 48.27 C221.81 59.04, 212.87 63.82, 204.03 64.35 M220.12 48.27 C220.93 57.19, 214.99 63.55, 204.03 64.35 M204.03 64.35 C160.86 61.68, 121.56 62.52, 16.09 64.35 M204.03 64.35 C141.33 65.9, 78.78 65.91, 16.09 64.35 M16.09 64.35 C4.91 63.29, -0.66 59.99, 0 48.27 M16.09 64.35 C4.95 64, 1.66 59.19, 0 48.27 M0 48.27 C-0.45 37.65, 0.8 28.29, 0 16.09 M0 48.27 C0.12 37.99, 0.31 27.47, 0 16.09 M0 16.09 C-1.36 5.83, 4.31 -1.37, 16.09 0 M0 16.09 C-0.86 5.77, 6.84 -2.09, 16.09 0" stroke="#f08c00" stroke-width="1" fill="none"></path></g><g transform="translate(300.5099978997905 473.9798518277669) rotate(0 104.19989013671875 25)"><text x="104.19989013671875" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#f08c00" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">parameter: </text><text x="104.19989013671875" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#f08c00" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">voteOptionTreeDepth</text></g><g transform="translate(750.4953177349116 407.24987127538884) rotate(0 31.809967041015625 12.5)"><text x="0" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="start" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">Inputs</text></g><g stroke-linecap="round"><g transform="translate(530.0671643086418 500.48962379467935) rotate(0 24.960479114054465 -0.18731294886765681)"><path d="M0.29 -0.43 C8.72 -0.49, 41.99 -0.55, 50.3 -0.51 M-0.23 0.54 C8.19 0.57, 41.71 0.4, 50.07 0.12" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(530.0671643086418 500.48962379467935) rotate(0 24.960479114054465 -0.18731294886765681)"><path d="M26.76 9.05 C31.69 7.51, 37.92 5.05, 50.07 0.12 M26.76 9.05 C35.09 5.5, 42.38 2.75, 50.07 0.12" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(530.0671643086418 500.48962379467935) rotate(0 24.960479114054465 -0.18731294886765681)"><path d="M26.47 -8.02 C31.46 -5.4, 37.75 -3.68, 50.07 0.12 M26.47 -8.02 C34.82 -5.75, 42.2 -2.69, 50.07 0.12" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g></g><mask></mask><g transform="translate(768.2816986487414 572.3231499964725) rotate(0 49.669944763183594 12.5)"><text x="0" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="start" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">Processing</text></g><g stroke-linecap="round"><g transform="translate(718.414643975037 550.3735906940208) rotate(0 -0.5472169645011036 42.731954703593374)"><path d="M0.51 0.49 C-0.01 14.88, -2.13 72.07, -2.26 86.05 M-0.68 -0.3 C-0.92 13.76, -0.17 69.99, -0.16 84.23" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(718.414643975037 550.3735906940208) rotate(0 -0.5472169645011036 42.731954703593374)"><path d="M-10.63 56.12 C-6.02 64.52, -1.99 78.22, -0.16 84.23 M-10.63 56.12 C-7.74 61.57, -6.73 68.25, -0.16 84.23" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(718.414643975037 550.3735906940208) rotate(0 -0.5472169645011036 42.731954703593374)"><path d="M9.89 55.97 C6.92 64.51, 3.37 78.27, -0.16 84.23 M9.89 55.97 C8.47 61.39, 5.17 68.1, -0.16 84.23" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g></g><mask></mask><g stroke-linecap="round" transform="translate(14.774504305367827 102.9114125870608) rotate(0 122.99280919396722 32.17741655087593)"><path d="M16.09 0 C98.5 1.55, 180.21 0.58, 229.9 0 M16.09 0 C69.2 -0.3, 120.16 0.32, 229.9 0 M229.9 0 C239.73 1.04, 246.33 7.06, 245.99 16.09 M229.9 0 C238.97 2.25, 246.45 6.52, 245.99 16.09 M245.99 16.09 C244.02 26.77, 246.36 36.74, 245.99 48.27 M245.99 16.09 C246.68 25.06, 246.88 34.72, 245.99 48.27 M245.99 48.27 C244.16 58.55, 239.53 65.01, 229.9 64.35 M245.99 48.27 C243.73 59.96, 238.41 65.3, 229.9 64.35 M229.9 64.35 C158.67 63.37, 86.57 62.08, 16.09 64.35 M229.9 64.35 C146.65 63.88, 62.05 64.31, 16.09 64.35 M16.09 64.35 C4.66 62.89, 1.17 59.59, 0 48.27 M16.09 64.35 C3.53 62.23, -0.05 58.84, 0 48.27 M0 48.27 C-0.44 39.44, -0.21 32.4, 0 16.09 M0 48.27 C0.73 40.9, -0.34 32.74, 0 16.09 M0 16.09 C-1.59 6.06, 6.37 -1.52, 16.09 0 M0 16.09 C1.91 7.53, 5.74 -0.01, 16.09 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(23.417421836737276 122.58882913793673) rotate(0 114.34989166259766 12.5)"><text x="114.34989166259766" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">currentTallyCommitment</text></g><g stroke-linecap="round" transform="translate(10 193.50294701350754) rotate(0 122.99280919396722 32.17741655087593)"><path d="M16.09 0 C80.32 -0.48, 145.89 0.02, 229.9 0 M16.09 0 C82.41 -2.4, 150.9 -1.13, 229.9 0 M229.9 0 C239.46 -1.05, 246.65 5.57, 245.99 16.09 M229.9 0 C242.21 -1.2, 246.67 7.11, 245.99 16.09 M245.99 16.09 C247.3 25.29, 246.51 38.27, 245.99 48.27 M245.99 16.09 C246.64 25.49, 246.55 33.24, 245.99 48.27 M245.99 48.27 C245.11 57.69, 242.35 66.23, 229.9 64.35 M245.99 48.27 C244.77 57.29, 241.28 65.31, 229.9 64.35 M229.9 64.35 C160.47 62.57, 88.39 64.7, 16.09 64.35 M229.9 64.35 C153.64 64.59, 76.63 65.06, 16.09 64.35 M16.09 64.35 C6.97 62.42, -0.15 57.98, 0 48.27 M16.09 64.35 C4.09 63.1, -0.93 57.22, 0 48.27 M0 48.27 C-0.17 35.99, -0.74 28.35, 0 16.09 M0 48.27 C-0.61 36.34, -0.28 23.48, 0 16.09 M0 16.09 C-1.43 4.4, 6.07 1.49, 16.09 0 M0 16.09 C-1 5.57, 4.67 0.88, 16.09 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(37.50289525353742 213.18036356438347) rotate(0 95.48991394042969 12.5)"><text x="95.48991394042969" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">newTallyCommitment</text></g><g stroke-linecap="round" transform="translate(277.7523011447988 12.425450395117196) rotate(0 122.99280919396722 42.5)"><path d="M21.25 0 C79.49 -0.66, 138.45 -0.91, 224.74 0 M21.25 0 C86.54 1.26, 151.28 0.91, 224.74 0 M224.74 0 C240.47 -1.15, 244.79 8.49, 245.99 21.25 M224.74 0 C238.1 -0.05, 247.49 5.89, 245.99 21.25 M245.99 21.25 C245.24 35.26, 246.11 53.63, 245.99 63.75 M245.99 21.25 C245.65 34.65, 246.26 48.49, 245.99 63.75 M245.99 63.75 C247.46 79.61, 240.71 86.88, 224.74 85 M245.99 63.75 C245.79 75.91, 240.18 82.76, 224.74 85 M224.74 85 C176.08 84.34, 125.16 83.15, 21.25 85 M224.74 85 C177.75 86.36, 130.9 86.6, 21.25 85 M21.25 85 C7.06 86.67, 2 79.83, 0 63.75 M21.25 85 C5.92 86.96, 0.34 79.76, 0 63.75 M0 63.75 C-1.84 55.51, 1.12 47.52, 0 21.25 M0 63.75 C-1.22 49.65, 0.61 34.86, 0 21.25 M0 21.25 C-0.92 5.58, 6 -1, 21.25 0 M0 21.25 C0.77 6.83, 6.99 -0.82, 21.25 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(287.8052070794886 17.425450395117196) rotate(0 112.93990325927734 37.5)"><text x="112.93990325927734" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">currentResults (array </text><text x="112.93990325927734" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">of length 5 ** </text><text x="112.93990325927734" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">voteOptionTreeDepth)</text></g><g stroke-linecap="round" transform="translate(282.61918115535605 114.08333608260978) rotate(0 122.99280919396722 42.5)"><path d="M21.25 0 C75.91 -1.82, 127.49 -2.83, 224.74 0 M21.25 0 C85.47 -1.22, 149.11 -1.25, 224.74 0 M224.74 0 C237.57 1.21, 247.34 5.68, 245.99 21.25 M224.74 0 C238.08 2.02, 246.59 5.24, 245.99 21.25 M245.99 21.25 C245.14 38.54, 245.72 53.09, 245.99 63.75 M245.99 21.25 C245.71 32.7, 245.77 42.61, 245.99 63.75 M245.99 63.75 C245.36 78.29, 237.13 86.63, 224.74 85 M245.99 63.75 C244.37 79.48, 239.7 82.93, 224.74 85 M224.74 85 C156.63 84.89, 88.45 83.25, 21.25 85 M224.74 85 C163.86 84.74, 102.44 84.96, 21.25 85 M21.25 85 C7.26 84.42, -1.19 78.63, 0 63.75 M21.25 85 C5.97 85.45, -0.42 78.64, 0 63.75 M0 63.75 C-1.99 50.44, -0.09 33.53, 0 21.25 M0 63.75 C0.96 52.15, 0.93 40.1, 0 21.25 M0 21.25 C2 5.79, 6.96 0.69, 21.25 0 M0 21.25 C-2.26 7.55, 5.11 -2.19, 21.25 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(288.9121002126044 144.08333608260978) rotate(0 116.69989013671875 12.5)"><text x="116.69989013671875" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">currentResultsRootSalt</text></g><g stroke-linecap="round" transform="translate(552.3509616970741 116.6754643528759) rotate(0 122.99280919396722 42.5)"><path d="M21.25 0 C99.39 0.91, 173.76 -1.12, 224.74 0 M21.25 0 C73.6 1.28, 126.46 1.71, 224.74 0 M224.74 0 C238.59 -1.56, 247.33 8.18, 245.99 21.25 M224.74 0 C239.61 -0.23, 244.2 8.83, 245.99 21.25 M245.99 21.25 C245.29 34.45, 244.33 51.75, 245.99 63.75 M245.99 21.25 C245.56 35.04, 246.08 48.45, 245.99 63.75 M245.99 63.75 C244.39 78.78, 237.76 86.19, 224.74 85 M245.99 63.75 C246.12 76.34, 236.9 83.21, 224.74 85 M224.74 85 C180.25 83.67, 137.45 82.99, 21.25 85 M224.74 85 C179.85 85.64, 133.67 85.39, 21.25 85 M21.25 85 C8.39 85.95, 0.46 76.24, 0 63.75 M21.25 85 C5.83 83.93, -1.82 79.24, 0 63.75 M0 63.75 C1.97 51.89, 0.46 42.68, 0 21.25 M0 63.75 C1.2 55.62, 0.71 47.31, 0 21.25 M0 21.25 C-0.59 5.81, 7.46 1.52, 21.25 0 M0 21.25 C0.67 6.98, 7.17 1.2, 21.25 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(577.5038584764904 146.6754643528759) rotate(0 97.83991241455078 12.5)"><text x="97.83991241455078" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">newResultsRootSalt</text></g><g stroke-linecap="round" transform="translate(553.1005245620408 16.835802184025624) rotate(0 122.99280919396722 42.5)"><path d="M21.25 0 C62.91 -0.7, 103.63 -1.37, 224.74 0 M21.25 0 C95.23 0.73, 169.1 -0.19, 224.74 0 M224.74 0 C240.67 -0.94, 245.32 6.59, 245.99 21.25 M224.74 0 C239.99 0.25, 245.66 8, 245.99 21.25 M245.99 21.25 C245.33 33.86, 244.73 43.54, 245.99 63.75 M245.99 21.25 C246.49 36.85, 246.54 52.5, 245.99 63.75 M245.99 63.75 C244.81 79.48, 237.16 83.58, 224.74 85 M245.99 63.75 C245.72 76.1, 238.72 84.38, 224.74 85 M224.74 85 C177.38 85.43, 134.54 84.85, 21.25 85 M224.74 85 C151.33 86.6, 76.65 85.57, 21.25 85 M21.25 85 C7.32 85.02, -0.01 76.05, 0 63.75 M21.25 85 C5.63 85.94, 0.83 77.64, 0 63.75 M0 63.75 C-0.74 50.04, 0.48 32.99, 0 21.25 M0 63.75 C0.05 52.44, 0.65 40.94, 0 21.25 M0 21.25 C-1.36 8.59, 5.8 -0.95, 21.25 0 M0 21.25 C0.42 7.4, 4.83 -1.43, 21.25 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(566.613421951809 21.835802184025624) rotate(0 109.47991180419922 37.5)"><text x="109.47991180419922" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">newResults (array of </text><text x="109.47991180419922" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">length 5 ** </text><text x="109.47991180419922" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">voteOptionTreeDepth)</text></g><g stroke-linecap="round" transform="translate(832.3443634324176 16.387120187390565) rotate(0 122.9928091939671 42.5)"><path d="M21.25 0 C100.08 -2.84, 176.02 -1.18, 224.74 0 M21.25 0 C72.13 -1.71, 121.75 -0.98, 224.74 0 M224.74 0 C237.19 -0.37, 244.39 6.39, 245.99 21.25 M224.74 0 C237.67 -1.1, 245.98 7.13, 245.99 21.25 M245.99 21.25 C245.34 34.35, 247.87 48.52, 245.99 63.75 M245.99 21.25 C246.34 30.48, 246.28 38.38, 245.99 63.75 M245.99 63.75 C246.34 79.86, 237.35 86.58, 224.74 85 M245.99 63.75 C244.92 79.42, 237.91 83.43, 224.74 85 M224.74 85 C148.75 82.45, 73.98 81.9, 21.25 85 M224.74 85 C151.2 83.51, 79.67 83.2, 21.25 85 M21.25 85 C8.67 84.28, -1.94 77.23, 0 63.75 M21.25 85 C6.93 87.1, -1.01 79.3, 0 63.75 M0 63.75 C-0.62 52.97, 0.12 41.07, 0 21.25 M0 63.75 C0.37 48.43, 0.58 32.15, 0 21.25 M0 21.25 C1.69 6, 7.5 -1.33, 21.25 0 M0 21.25 C0.88 9.16, 5.35 -2.07, 21.25 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(842.3372870673029 33.887120187390565) rotate(0 112.99988555908203 25)"><text x="112.99988555908203" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">newSpentVoiceCreditSub</text><text x="112.99988555908203" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">total</text></g><g stroke-linecap="round" transform="translate(1096.3805219227352 10) rotate(0 122.9928091939671 42.5)"><path d="M21.25 0 C94.07 -1.36, 166.23 1.56, 224.74 0 M21.25 0 C69.49 -0.7, 116.42 -1.71, 224.74 0 M224.74 0 C240.9 0.62, 246.2 6.75, 245.99 21.25 M224.74 0 C239.51 -1.04, 247.39 7.46, 245.99 21.25 M245.99 21.25 C245.84 31.44, 245.96 40.28, 245.99 63.75 M245.99 21.25 C245.65 33.25, 246.19 45.84, 245.99 63.75 M245.99 63.75 C246.53 78.54, 238.41 84.37, 224.74 85 M245.99 63.75 C246.12 79.98, 239.04 85.34, 224.74 85 M224.74 85 C154.41 83.21, 80.44 83.59, 21.25 85 M224.74 85 C176.62 84.25, 129.03 83.67, 21.25 85 M21.25 85 C7.48 85.62, -0.77 76.68, 0 63.75 M21.25 85 C7.08 83.43, 0.5 77.95, 0 63.75 M0 63.75 C-0.95 48.91, -1.15 30.3, 0 21.25 M0 63.75 C0.18 54.95, 0.28 46.41, 0 21.25 M0 21.25 C0.93 7.22, 6.82 1.56, 21.25 0 M0 21.25 C1.93 7.44, 6.02 -2.29, 21.25 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(1106.3734455576205 27.5) rotate(0 112.99988555908203 25)"><text x="112.99988555908203" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">newSpentVoiceCreditSub</text><text x="112.99988555908203" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">totalSalt</text></g><g stroke-linecap="round" transform="translate(838.451717198378 113.23380950809928) rotate(0 122.9928091939671 55)"><path d="M27.5 0 C66.79 -0.04, 110.91 -0.86, 218.49 0 M27.5 0 C93.83 -0.18, 160.23 -1.6, 218.49 0 M218.49 0 C237.35 0.14, 244.45 7.6, 245.99 27.5 M218.49 0 C236.1 1.43, 245.51 10.38, 245.99 27.5 M245.99 27.5 C246.77 39.92, 245.02 54.98, 245.99 82.5 M245.99 27.5 C245.57 39.39, 245.87 53.27, 245.99 82.5 M245.99 82.5 C247.27 100.77, 235.16 108.72, 218.49 110 M245.99 82.5 C248.16 99.84, 236.89 108.86, 218.49 110 M218.49 110 C161.15 109.28, 105.84 107.68, 27.5 110 M218.49 110 C155.67 108.72, 91.05 110, 27.5 110 M27.5 110 C7.29 111.72, -0.84 101.3, 0 82.5 M27.5 110 C9.07 109.22, -1.5 103.12, 0 82.5 M0 82.5 C-0.3 70.39, -1.8 62.33, 0 27.5 M0 82.5 C0.64 68.45, -0.27 53.41, 0 27.5 M0 27.5 C-1.1 8.29, 8.45 1.17, 27.5 0 M0 27.5 C-1.08 8.42, 8.27 2.07, 27.5 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(846.1446225227164 118.23380950809928) rotate(0 115.2999038696289 50)"><text x="115.2999038696289" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">currentPerVOSpentVoice</text><text x="115.2999038696289" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">Credits (array of len 5</text><text x="115.2999038696289" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">** </text><text x="115.2999038696289" y="75" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">voteOptionTreeDepth)</text></g><g stroke-linecap="round" transform="translate(1110.7541816502257 110.98668800105611) rotate(0 122.9928091939671 55)"><path d="M27.5 0 C97.61 1.98, 166.74 2.16, 218.49 0 M27.5 0 C101.14 2.73, 174.5 1.59, 218.49 0 M218.49 0 C238.33 1.62, 245.66 8.87, 245.99 27.5 M218.49 0 C235.66 -0.69, 244.96 11.1, 245.99 27.5 M245.99 27.5 C246.71 38.37, 244.67 51.78, 245.99 82.5 M245.99 27.5 C246.54 42.54, 246.05 55.1, 245.99 82.5 M245.99 82.5 C247.76 100.78, 235 110.2, 218.49 110 M245.99 82.5 C248.28 102.73, 238.96 109.59, 218.49 110 M218.49 110 C153.03 113.4, 88.19 113.3, 27.5 110 M218.49 110 C145.46 110.52, 72.5 110.31, 27.5 110 M27.5 110 C7.29 109.44, 1.54 100.42, 0 82.5 M27.5 110 C7.47 108.9, 1.52 98.55, 0 82.5 M0 82.5 C1.38 72.14, 0.46 57.61, 0 27.5 M0 82.5 C0.79 71.89, -0.93 60, 0 27.5 M0 27.5 C1.37 10.56, 7.78 -0.75, 27.5 0 M0 27.5 C1.97 11.35, 8.05 -1.34, 27.5 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(1119.657101317826 140.9866880010561) rotate(0 114.08988952636719 25)"><text x="114.08988952636719" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">currentPerVOSpentVoice</text><text x="114.08988952636719" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">CreditsRootSalt</text></g><g stroke-linecap="round" transform="translate(302.6251195935463 229.84518821550023) rotate(0 122.99280919396722 55)"><path d="M27.5 0 C102.23 1.23, 178.55 0.73, 218.49 0 M27.5 0 C80.64 0.82, 133.45 -0.6, 218.49 0 M218.49 0 C237.87 1.39, 247.57 10.12, 245.99 27.5 M218.49 0 C238.72 -0.55, 246.47 9.57, 245.99 27.5 M245.99 27.5 C247.54 39.66, 244.27 51.08, 245.99 82.5 M245.99 27.5 C245.82 48.41, 245.44 69.35, 245.99 82.5 M245.99 82.5 C247.42 99.78, 236.52 108.16, 218.49 110 M245.99 82.5 C244.99 99.2, 236.03 107.88, 218.49 110 M218.49 110 C157.24 110.58, 92.02 111.4, 27.5 110 M218.49 110 C174.89 111.71, 132.42 110.75, 27.5 110 M27.5 110 C10.75 109.65, -0.02 102.34, 0 82.5 M27.5 110 C11.18 109.16, 1.47 98.67, 0 82.5 M0 82.5 C-1.11 67.63, -0.34 54.67, 0 27.5 M0 82.5 C1.35 68.24, -0.46 53.89, 0 27.5 M0 27.5 C0.36 8.98, 8.58 1.56, 27.5 0 M0 27.5 C1.58 7.52, 9.07 2.11, 27.5 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(308.4880383456191 259.84518821550023) rotate(0 117.12989044189453 25)"><text x="117.12989044189453" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">newPerVOSpentVoiceCred</text><text x="117.12989044189453" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">itsRootSalt</text></g><g stroke-linecap="round" transform="translate(836.6728250470132 252.50626835142498) rotate(0 122.9928091939671 55)"><path d="M27.5 0 C102.27 1.86, 176.61 -0.37, 218.49 0 M27.5 0 C79.13 -0.55, 132.61 -0.36, 218.49 0 M218.49 0 C238.26 -1.55, 245.96 10.98, 245.99 27.5 M218.49 0 C235.23 -1.87, 245.87 6.9, 245.99 27.5 M245.99 27.5 C247.64 43.13, 245.39 61.86, 245.99 82.5 M245.99 27.5 C246.94 44.95, 247.01 61.38, 245.99 82.5 M245.99 82.5 C244.24 100.68, 238.68 110.48, 218.49 110 M245.99 82.5 C243.97 101.77, 238.15 109.59, 218.49 110 M218.49 110 C165.34 109.17, 112.02 108.34, 27.5 110 M218.49 110 C148.8 108.15, 80.39 108.14, 27.5 110 M27.5 110 C7.83 110, -0.16 99.42, 0 82.5 M27.5 110 C9.12 112.23, 0.48 101.15, 0 82.5 M0 82.5 C0.94 63.72, 0.78 44.91, 0 27.5 M0 82.5 C-0.55 69.33, -0.72 56.55, 0 27.5 M0 27.5 C-1.86 10.38, 8.97 1.37, 27.5 0 M0 27.5 C-1.28 9.25, 7.83 -0.51, 27.5 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(842.535743799086 270.006268351425) rotate(0 117.12989044189453 37.5)"><text x="117.12989044189453" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">newPerVOSpentVoiceCred</text><text x="117.12989044189453" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">its (array of len 5 ** </text><text x="117.12989044189453" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">voteOptionTreeDepth)</text></g><g stroke-linecap="round" transform="translate(409.6526355461808 688.0175210802165) rotate(0 122.99280919396722 55)"><path d="M27.5 0 C81.6 2.09, 132.79 0.18, 218.49 0 M27.5 0 C75.29 -2.13, 121.38 -1.85, 218.49 0 M218.49 0 C237.11 0.38, 244.98 8.27, 245.99 27.5 M218.49 0 C237.68 -1.23, 248 10.68, 245.99 27.5 M245.99 27.5 C245.47 43.2, 245.99 58.28, 245.99 82.5 M245.99 27.5 C246.68 39.26, 245.3 52.03, 245.99 82.5 M245.99 82.5 C244.26 100.08, 237.4 111.95, 218.49 110 M245.99 82.5 C244.03 100.35, 238.48 110.2, 218.49 110 M218.49 110 C170.34 111.08, 125.83 112.09, 27.5 110 M218.49 110 C144.12 110.56, 70 111.08, 27.5 110 M27.5 110 C10.11 111.54, 1.4 99.77, 0 82.5 M27.5 110 C9.73 109.65, -1.62 99.54, 0 82.5 M0 82.5 C-0.23 67.83, 0.54 56.84, 0 27.5 M0 82.5 C0.36 66.59, -0.63 50.31, 0 27.5 M0 27.5 C-1.74 10.14, 8.97 -1.43, 27.5 0 M0 27.5 C-2.06 10.77, 7.84 2.24, 27.5 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(437.215528358312 705.5175210802165) rotate(0 95.42991638183594 37.5)"><text x="95.42991638183594" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">1. Compute the </text><text x="95.42991638183594" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">commitment to the </text><text x="95.42991638183594" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">current results</text></g><g stroke-linecap="round" transform="translate(805.4345686830961 678.5032644316832) rotate(0 122.9928091939671 55)"><path d="M27.5 0 C65.29 -0.08, 107.2 -1.29, 218.49 0 M27.5 0 C104.59 -0.04, 179.01 0.84, 218.49 0 M218.49 0 C235.51 -0.53, 245.65 10.76, 245.99 27.5 M218.49 0 C235.94 -0.46, 243.73 11.05, 245.99 27.5 M245.99 27.5 C245.96 44.26, 246.21 55.83, 245.99 82.5 M245.99 27.5 C245.94 43.81, 246.37 61.5, 245.99 82.5 M245.99 82.5 C247.96 99.86, 237.8 108.31, 218.49 110 M245.99 82.5 C247.18 101.96, 237.9 110.15, 218.49 110 M218.49 110 C148.13 110.19, 76.32 112.21, 27.5 110 M218.49 110 C165.42 110.33, 112.49 109.61, 27.5 110 M27.5 110 C7.38 111.31, -1.07 99.69, 0 82.5 M27.5 110 C7.98 110.6, 1.94 101.88, 0 82.5 M0 82.5 C1.59 59.97, 0.79 40.98, 0 27.5 M0 82.5 C-0.5 63.21, 0.44 43.58, 0 27.5 M0 27.5 C-0.96 8.17, 8.17 -1.61, 27.5 0 M0 27.5 C1.33 9.24, 11.33 -1.5, 27.5 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(814.9774724815557 683.5032644316832) rotate(0 113.44990539550781 50)"><text x="113.44990539550781" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">use QuinCheckRoot and</text><text x="113.44990539550781" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">pass all items in the </text><text x="113.44990539550781" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">currentResults array </text><text x="113.44990539550781" y="75" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">as leaves</text></g><g stroke-linecap="round"><g transform="translate(691.8008668641289 739.2544016142676) rotate(0 32.3183002870245 0.3167167035071543)"><path d="M-0.18 0.81 C10.35 0.9, 53.41 1.65, 64.36 1.42 M-1.73 0.19 C8.51 -0.13, 52.11 -0.27, 63.26 -0.28" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(691.8008668641289 739.2544016142676) rotate(0 32.3183002870245 0.3167167035071543)"><path d="M35.1 10.05 C47.63 5.5, 58.84 3.27, 63.26 -0.28 M35.1 10.05 C41.46 7.84, 46.33 4.78, 63.26 -0.28" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(691.8008668641289 739.2544016142676) rotate(0 32.3183002870245 0.3167167035071543)"><path d="M35.04 -10.47 C47.74 -6.82, 58.98 -0.86, 63.26 -0.28 M35.04 -10.47 C41.61 -8.57, 46.49 -7.51, 63.26 -0.28" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g></g><mask></mask><g stroke-linecap="round" transform="translate(1081.7365641824176 675.4682203016976) rotate(0 122.9928091939671 55)"><path d="M27.5 0 C104.01 -0.79, 178.6 -1.71, 218.49 0 M27.5 0 C95.53 -1.22, 164.01 -0.85, 218.49 0 M218.49 0 C236.27 0.3, 246.98 8.97, 245.99 27.5 M218.49 0 C237.78 1.86, 247.2 7.2, 245.99 27.5 M245.99 27.5 C244.39 46.33, 244.04 62.88, 245.99 82.5 M245.99 27.5 C246.5 46.71, 245.98 66.03, 245.99 82.5 M245.99 82.5 C246.84 99.39, 236.41 111.9, 218.49 110 M245.99 82.5 C246.74 101.72, 234.74 111.99, 218.49 110 M218.49 110 C160.05 108.43, 101.64 106.74, 27.5 110 M218.49 110 C147.99 112.27, 78.98 112.44, 27.5 110 M27.5 110 C8.86 108.72, 1.07 99.15, 0 82.5 M27.5 110 C9.07 111.82, -1.28 100.44, 0 82.5 M0 82.5 C-0.09 62.93, 2.04 41.31, 0 27.5 M0 82.5 C-0.52 68.64, 0.25 54.04, 0 27.5 M0 27.5 C-0.74 9.99, 10.19 0.16, 27.5 0 M0 27.5 C1.51 9.64, 11.18 2.13, 27.5 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(1092.2994646239435 705.4682203016976) rotate(0 112.4299087524414 25)"><text x="112.4299087524414" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">hash the root of the </text><text x="112.4299087524414" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">new tree with the salt</text></g><g stroke-linecap="round" transform="translate(412.2546780324035 836.9565268182967) rotate(0 122.99280919396722 55)"><path d="M27.5 0 C72.17 -2.1, 122.14 -0.09, 218.49 0 M27.5 0 C71.22 -0.06, 115.33 1.49, 218.49 0 M218.49 0 C235.8 -0.59, 247.78 7.55, 245.99 27.5 M218.49 0 C237.57 1.38, 247.79 11.09, 245.99 27.5 M245.99 27.5 C246.21 42.61, 246.93 61.43, 245.99 82.5 M245.99 27.5 C246.36 44.54, 246.3 62.72, 245.99 82.5 M245.99 82.5 C244.77 99.38, 236.15 110.87, 218.49 110 M245.99 82.5 C245.99 101.52, 237.52 108.68, 218.49 110 M218.49 110 C143.16 110.02, 68.24 113.03, 27.5 110 M218.49 110 C149.67 110.84, 81.79 110.49, 27.5 110 M27.5 110 C9.47 111.21, -0.38 101.99, 0 82.5 M27.5 110 C7.85 109.35, 2.3 102.03, 0 82.5 M0 82.5 C-0.68 69.57, -0.8 54.9, 0 27.5 M0 82.5 C0.29 62.27, -0.22 41.14, 0 27.5 M0 27.5 C-0.56 11.13, 8.25 -0.3, 27.5 0 M0 27.5 C-1.28 9.42, 8.6 -1.18, 27.5 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(435.5575763376987 841.9565268182967) rotate(0 99.68991088867188 50)"><text x="99.68991088867188" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">2. Compute the </text><text x="99.68991088867188" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">commitment to the </text><text x="99.68991088867188" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">current spent voice </text><text x="99.68991088867188" y="75" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">credits</text></g><g stroke-linecap="round" transform="translate(805.0645078625575 835.515146963198) rotate(0 122.9928091939671 55)"><path d="M27.5 0 C77.87 -3.71, 130.41 -2.03, 218.49 0 M27.5 0 C88.73 0.32, 150.47 -0.03, 218.49 0 M218.49 0 C237.33 1.16, 247.77 9.03, 245.99 27.5 M218.49 0 C238.72 0.14, 247.81 9, 245.99 27.5 M245.99 27.5 C245.4 41.63, 244.85 50.81, 245.99 82.5 M245.99 27.5 C245.08 46.83, 246.44 64.93, 245.99 82.5 M245.99 82.5 C244.53 101.31, 237.14 110.6, 218.49 110 M245.99 82.5 C248.01 100.87, 235.37 111.63, 218.49 110 M218.49 110 C144.33 111.04, 68.52 110.99, 27.5 110 M218.49 110 C154.95 109.57, 92.83 108.9, 27.5 110 M27.5 110 C11.02 110.29, -1.66 98.84, 0 82.5 M27.5 110 C7.02 109.19, 2.2 100.86, 0 82.5 M0 82.5 C0.68 69.12, -1.49 58.01, 0 27.5 M0 82.5 C0.59 66.87, 1.12 49.4, 0 27.5 M0 27.5 C1.23 9.13, 7.93 -0.29, 27.5 0 M0 27.5 C-1.64 11.39, 7.61 -1.9, 27.5 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(810.2074330233218 865.515146963198) rotate(0 117.84988403320312 25)"><text x="117.84988403320312" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">hash(currentSpentVoiceC</text><text x="117.84988403320312" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">reditSubtotal, salt)</text></g><g stroke-linecap="round"><g transform="translate(691.4308060435906 896.266284145782) rotate(0 32.3183002870245 0.3167167035071543)"><path d="M-0.17 0.27 C10.84 0.54, 54.13 0.71, 64.87 0.93 M-1.72 -0.64 C9.25 -0.68, 53.21 -1.1, 64.05 -1.04" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(691.4308060435906 896.266284145782) rotate(0 32.3183002870245 0.3167167035071543)"><path d="M35.89 9.31 C42.08 7.65, 47.81 4.58, 64.05 -1.04 M35.89 9.31 C46.82 5.85, 58.12 1.28, 64.05 -1.04" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(691.4308060435906 896.266284145782) rotate(0 32.3183002870245 0.3167167035071543)"><path d="M35.83 -11.21 C41.9 -8.73, 47.65 -7.66, 64.05 -1.04 M35.83 -11.21 C46.76 -6.9, 58.09 -3.7, 64.05 -1.04" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g></g><mask></mask><g stroke-linecap="round" transform="translate(414.38352495841104 977.1161952460341) rotate(0 122.99280919396722 55)"><path d="M27.5 0 C80.7 0.55, 136.01 0.05, 218.49 0 M27.5 0 C67.29 -0.23, 105.43 -0.98, 218.49 0 M218.49 0 C236.43 0.64, 246.68 7.39, 245.99 27.5 M218.49 0 C234.82 -0.68, 244.01 9.62, 245.99 27.5 M245.99 27.5 C244.71 41.08, 245.8 56.27, 245.99 82.5 M245.99 27.5 C246.23 39.44, 246.68 52.08, 245.99 82.5 M245.99 82.5 C246.62 100.28, 238.31 110.19, 218.49 110 M245.99 82.5 C247.94 99.33, 237.79 108.77, 218.49 110 M218.49 110 C170.87 112.48, 124.2 110.13, 27.5 110 M218.49 110 C174.99 109.48, 131.09 110.48, 27.5 110 M27.5 110 C8.23 109.19, 1.49 101.67, 0 82.5 M27.5 110 C10.24 110.09, 1.33 99.79, 0 82.5 M0 82.5 C0.11 65.34, 1.27 48.67, 0 27.5 M0 82.5 C0.44 70.44, 0.6 57.99, 0 27.5 M0 27.5 C-0.78 10.51, 7.88 0.12, 27.5 0 M0 27.5 C2.12 7.79, 10.5 -2.02, 27.5 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(424.3264455415383 982.1161952460341) rotate(0 113.04988861083984 50)"><text x="113.04988861083984" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">3. Compute the </text><text x="113.04988861083984" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">commitment of the </text><text x="113.04988861083984" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">spent voice credits per</text><text x="113.04988861083984" y="75" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">vote option</text></g><g stroke-linecap="round" transform="translate(814.4690933531524 973.0000990106589) rotate(0 122.9928091939671 55)"><path d="M27.5 0 C91.76 -3.42, 158.29 -1.29, 218.49 0 M27.5 0 C94.08 -0.96, 161.9 -1.29, 218.49 0 M218.49 0 C237.75 -1.41, 246.59 9.03, 245.99 27.5 M218.49 0 C238.7 1.12, 244.44 9.11, 245.99 27.5 M245.99 27.5 C247.68 48.7, 246.04 68.88, 245.99 82.5 M245.99 27.5 C245.53 47.3, 246.85 68.39, 245.99 82.5 M245.99 82.5 C244.29 101.45, 235.76 110.87, 218.49 110 M245.99 82.5 C243.8 99.64, 234.78 111.73, 218.49 110 M218.49 110 C174.56 107.78, 130.12 108.36, 27.5 110 M218.49 110 C171.75 111.42, 123.44 109.98, 27.5 110 M27.5 110 C11.06 109.32, 0.97 102.15, 0 82.5 M27.5 110 C9.85 109.76, -0.46 98.93, 0 82.5 M0 82.5 C-0.49 60.64, 0.05 40.93, 0 27.5 M0 82.5 C-0.45 70.67, 0.4 56.71, 0 27.5 M0 27.5 C-0.01 8.26, 10.53 -1.58, 27.5 0 M0 27.5 C-1.9 9.46, 10.02 -0.37, 27.5 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(823.3720130207525 978.0000990106589) rotate(0 114.08988952636719 50)"><text x="114.08988952636719" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">use QuinCheckRoot and</text><text x="114.08988952636719" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">pass all items in </text><text x="114.08988952636719" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">currentPerVOSpentVoice</text><text x="114.08988952636719" y="75" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">Credits</text></g><g stroke-linecap="round"><g transform="translate(700.8353915341854 1033.7512361932438) rotate(0 32.3183002870245 0.3167167035071543)"><path d="M0.16 0.62 C11.29 0.91, 55.01 1.2, 65.64 1.19 M-1.21 -0.1 C9.94 -0.12, 53.94 -0.96, 65.22 -0.64" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(700.8353915341854 1033.7512361932438) rotate(0 32.3183002870245 0.3167167035071543)"><path d="M37.01 9.58 C43.93 9.1, 49.66 4.14, 65.22 -0.64 M37.01 9.58 C45.73 5.99, 53.83 3.64, 65.22 -0.64" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(700.8353915341854 1033.7512361932438) rotate(0 32.3183002870245 0.3167167035071543)"><path d="M37.05 -10.94 C43.86 -7.18, 49.59 -7.89, 65.22 -0.64 M37.05 -10.94 C45.77 -8.52, 53.86 -4.86, 65.22 -0.64" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g></g><mask></mask><g stroke-linecap="round" transform="translate(1091.2054844591257 971.4867744828396) rotate(0 122.9928091939671 55)"><path d="M27.5 0 C75.88 -0.66, 127.02 0.37, 218.49 0 M27.5 0 C68.74 0.93, 108.25 0.35, 218.49 0 M218.49 0 C235.4 -1.5, 246.48 7.78, 245.99 27.5 M218.49 0 C234.71 0.3, 245.68 7.16, 245.99 27.5 M245.99 27.5 C247.83 46.2, 245.98 63.56, 245.99 82.5 M245.99 27.5 C246.57 48.49, 246.26 69.44, 245.99 82.5 M245.99 82.5 C246.24 101.58, 238.74 108.77, 218.49 110 M245.99 82.5 C245.54 100.09, 235.19 111.81, 218.49 110 M218.49 110 C172.28 109.53, 124.06 111.07, 27.5 110 M218.49 110 C179.02 109.84, 140.45 109.54, 27.5 110 M27.5 110 C10.34 112, 0.21 99.47, 0 82.5 M27.5 110 C10.09 107.73, -0.09 103.07, 0 82.5 M0 82.5 C0.38 66.97, 1.17 56.46, 0 27.5 M0 82.5 C-0.82 65.61, 0.24 47.82, 0 27.5 M0 27.5 C0.94 7.87, 9.28 1.63, 27.5 0 M0 27.5 C2.15 8.58, 8.53 1.39, 27.5 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(1101.5183925300462 988.9867744828396) rotate(0 112.67990112304688 37.5)"><text x="112.67990112304688" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">hash the root of this </text><text x="112.67990112304688" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">tree with the perVO </text><text x="112.67990112304688" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">salt</text></g><g stroke-linecap="round" transform="translate(422.33740487232194 1123.0307081879125) rotate(0 122.99280919396722 55)"><path d="M27.5 0 C84.08 -1.64, 143.12 -0.3, 218.49 0 M27.5 0 C80.88 -0.45, 132.52 0.93, 218.49 0 M218.49 0 C236.04 -0.72, 246.12 10.27, 245.99 27.5 M218.49 0 C235.13 2.05, 245.19 7.68, 245.99 27.5 M245.99 27.5 C247.68 50.28, 247.6 69.03, 245.99 82.5 M245.99 27.5 C246.28 42.06, 245.6 55.47, 245.99 82.5 M245.99 82.5 C246.16 102.01, 235.27 108.16, 218.49 110 M245.99 82.5 C247.97 101.83, 236.54 109.13, 218.49 110 M218.49 110 C157.06 109.08, 93.23 109.89, 27.5 110 M218.49 110 C161.99 110.69, 106.1 110.99, 27.5 110 M27.5 110 C9.09 109.64, -0.75 99.6, 0 82.5 M27.5 110 C11.03 110.49, 0.3 102.59, 0 82.5 M0 82.5 C-0.72 64.74, 0.03 49.34, 0 27.5 M0 82.5 C0.35 61.29, -0.38 39.01, 0 27.5 M0 27.5 C1.76 8.74, 9.92 1.05, 27.5 0 M0 27.5 C1.8 9.88, 10.83 -1.66, 27.5 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(458.27027754285155 1153.0307081879125) rotate(0 87.0599365234375 25)"><text x="87.0599365234375" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">4. Calculate the </text><text x="87.0599365234375" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">tallyCommitment</text></g><g stroke-linecap="round" transform="translate(811.5367632464358 1104.8728023632527) rotate(0 238.36700725209585 74.16975346443473)"><path d="M32 0 C143.64 1.07, 254.6 0.11, 444.73 0 M32 0 C196.62 -1.62, 361.52 -1.27, 444.73 0 M444.73 0 C467.01 -0.74, 478.7 9.09, 476.73 32 M444.73 0 C467.69 -1.55, 474.84 10.62, 476.73 32 M476.73 32 C476.1 63.58, 477.27 94.21, 476.73 116.34 M476.73 32 C476.83 53.04, 476.71 73.47, 476.73 116.34 M476.73 116.34 C477.6 136.56, 467.18 148.44, 444.73 148.34 M476.73 116.34 C475.12 137.17, 465.59 148.9, 444.73 148.34 M444.73 148.34 C293.74 147.53, 142.06 147.59, 32 148.34 M444.73 148.34 C282.35 148.45, 118.86 148.93, 32 148.34 M32 148.34 C9.94 148.78, -0.05 139.38, 0 116.34 M32 148.34 C9.12 148.21, 1.63 139.79, 0 116.34 M0 116.34 C0.66 86.32, -2.06 58.41, 0 32 M0 116.34 C0.04 86.26, -1.07 55.04, 0 32 M0 32 C-0.78 10.56, 10.93 1.63, 32 0 M0 32 C-1.95 9.8, 12.6 1.93, 32 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(820.1139755766567 1141.5425558276877) rotate(0 229.789794921875 37.5)"><text x="229.789794921875" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">hash(currentResultsCommitmentHash, </text><text x="229.789794921875" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">currentSpentVoiceCreditsCommitmentHash, </text><text x="229.789794921875" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">currentPerVOSpentVoiceCreditsCommitmentHash)</text></g><g stroke-linecap="round"><g transform="translate(701.3366058564193 1179.8853169910938) rotate(0 32.3183002870245 0.3167167035071543)"><path d="M-0.39 1.18 C10.23 1.24, 53.55 1.58, 64.42 1.47 M1.6 0.76 C11.99 1, 52.94 -0.38, 63.36 -0.22" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(701.3366058564193 1179.8853169910938) rotate(0 32.3183002870245 0.3167167035071543)"><path d="M35.28 10.37 C47.13 6.34, 56.51 3.21, 63.36 -0.22 M35.28 10.37 C43.81 6.78, 52.45 3.29, 63.36 -0.22" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(701.3366058564193 1179.8853169910938) rotate(0 32.3183002870245 0.3167167035071543)"><path d="M35.05 -10.15 C47.17 -6.9, 56.63 -2.73, 63.36 -0.22 M35.05 -10.15 C43.8 -7.8, 52.52 -5.34, 63.36 -0.22" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g></g><mask></mask><g stroke-linecap="round" transform="translate(1362.3274583309749 1143.790954498604) rotate(0 119.97668795692084 42.5)"><path d="M21.25 0 C63.94 -1.82, 101.92 -1.6, 218.7 0 M21.25 0 C86.86 -0.75, 151.68 -2.06, 218.7 0 M218.7 0 C232.61 -1.44, 238.44 5.29, 239.95 21.25 M218.7 0 C233.54 -0.49, 240.3 5.86, 239.95 21.25 M239.95 21.25 C237.9 39.16, 239.62 53.12, 239.95 63.75 M239.95 21.25 C239.78 36.13, 240.43 50.95, 239.95 63.75 M239.95 63.75 C239.74 77.49, 231.25 86.81, 218.7 85 M239.95 63.75 C239.51 77.46, 234.22 84.15, 218.7 85 M218.7 85 C177.27 86.86, 131.38 86.29, 21.25 85 M218.7 85 C163.98 84.99, 107.55 83.63, 21.25 85 M21.25 85 C6.26 85.9, 0.56 77.61, 0 63.75 M21.25 85 C9.31 83.08, -1.23 77.37, 0 63.75 M0 63.75 C1.04 55.77, -0.51 45.58, 0 21.25 M0 63.75 C-0.04 54.67, 0.59 44.71, 0 21.25 M0 21.25 C1.64 6.85, 5.28 -0.17, 21.25 0 M0 21.25 C0.37 6.19, 4.96 1.82, 21.25 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(1370.974228380181 1148.790954498604) rotate(0 111.32991790771484 37.5)"><text x="111.32991790771484" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">if this is the first </text><text x="111.32991790771484" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">batch we do not check</text><text x="111.32991790771484" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">that it is correct</text></g><g stroke-linecap="round" transform="translate(430.9601596613754 1287.8693579779072) rotate(0 122.99280919396722 55)"><path d="M27.5 0 C69.8 -0.4, 113.56 -2.11, 218.49 0 M27.5 0 C94.39 -1.82, 158.94 -0.2, 218.49 0 M218.49 0 C236.92 -0.46, 245.61 7.99, 245.99 27.5 M218.49 0 C238.18 0.28, 245.43 9.6, 245.99 27.5 M245.99 27.5 C246.03 49.43, 247.67 69.25, 245.99 82.5 M245.99 27.5 C245.65 43.97, 245.45 60.57, 245.99 82.5 M245.99 82.5 C246 100.46, 237.66 109.41, 218.49 110 M245.99 82.5 C247.31 102.29, 235.16 110.36, 218.49 110 M218.49 110 C175.07 109.67, 127.9 109.24, 27.5 110 M218.49 110 C155.43 111.32, 91.57 111.91, 27.5 110 M27.5 110 C7.78 109.48, -0.26 101.27, 0 82.5 M27.5 110 C7.27 109.24, 1.7 101.13, 0 82.5 M0 82.5 C0.63 60.2, 0.1 39.54, 0 27.5 M0 82.5 C0.16 67, -0.05 52.78, 0 27.5 M0 27.5 C1.64 9.72, 8.16 -1.42, 27.5 0 M0 27.5 C-1.67 8.21, 10.73 -0.26, 27.5 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(438.0830652908894 1305.3693579779072) rotate(0 115.86990356445312 37.5)"><text x="115.86990356445312" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">5. Compute the </text><text x="115.86990356445312" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">commitment of the new </text><text x="115.86990356445312" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">results tree</text></g><g stroke-linecap="round"><g transform="translate(704.0839186901162 1339.7168870348348) rotate(0 32.3183002870245 0.3167167035071543)"><path d="M0.39 -0.64 C11.14 -0.4, 54.15 0.25, 64.87 0.35 M-0.86 1.63 C9.71 2.16, 53.24 1.85, 64.05 1.74" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(704.0839186901162 1339.7168870348348) rotate(0 32.3183002870245 0.3167167035071543)"><path d="M35.94 12.21 C44.36 9.01, 54.35 5.27, 64.05 1.74 M35.94 12.21 C43.54 10.5, 49.36 8.07, 64.05 1.74" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(704.0839186901162 1339.7168870348348) rotate(0 32.3183002870245 0.3167167035071543)"><path d="M35.78 -8.31 C44.06 -4.65, 54.11 -1.54, 64.05 1.74 M35.78 -8.31 C43.39 -4.99, 49.25 -2.4, 64.05 1.74" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g></g><mask></mask><g stroke-linecap="round" transform="translate(817.1710380020172 1293.890262848067) rotate(0 122.9928091939671 55)"><path d="M27.5 0 C104.63 -0.24, 179.8 2.51, 218.49 0 M27.5 0 C102.19 0.71, 177.35 2.08, 218.49 0 M218.49 0 C238.46 1.91, 245.36 7.54, 245.99 27.5 M218.49 0 C237.23 1.01, 245.63 7.63, 245.99 27.5 M245.99 27.5 C247.05 43.62, 244.84 62.76, 245.99 82.5 M245.99 27.5 C246.84 40.39, 245.19 54.21, 245.99 82.5 M245.99 82.5 C247.05 100.3, 237.13 111.91, 218.49 110 M245.99 82.5 C247.54 102.77, 235.93 110.16, 218.49 110 M218.49 110 C175.21 108.22, 133.52 109.64, 27.5 110 M218.49 110 C172.31 111.42, 127.28 111.38, 27.5 110 M27.5 110 C7.86 108.4, 1.59 99.6, 0 82.5 M27.5 110 C7.49 107.74, 1.14 101.13, 0 82.5 M0 82.5 C0.8 63.45, 0.85 44.73, 0 27.5 M0 82.5 C-1.18 67.47, -1.02 51.1, 0 27.5 M0 27.5 C1.56 8.23, 8.55 1.47, 27.5 0 M0 27.5 C0.1 10.14, 11.38 0.57, 27.5 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(826.7139418004767 1311.390262848067) rotate(0 113.44990539550781 37.5)"><text x="113.44990539550781" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">use QuinCheckRoot and</text><text x="113.44990539550781" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">pass all items in </text><text x="113.44990539550781" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">newResults</text></g><g stroke-linecap="round" transform="translate(1079.37811252938 1295.5448916604203) rotate(0 122.9928091939671 55)"><path d="M27.5 0 C71.76 2.48, 115.58 0.17, 218.49 0 M27.5 0 C94.37 -2.17, 159.07 -1.72, 218.49 0 M218.49 0 C237.9 -0.49, 245.26 8.3, 245.99 27.5 M218.49 0 C234.7 1.34, 247.9 8.95, 245.99 27.5 M245.99 27.5 C245.86 41.52, 247.05 50.39, 245.99 82.5 M245.99 27.5 C245.29 44.7, 247.13 63.04, 245.99 82.5 M245.99 82.5 C244.71 102.25, 237.58 111.13, 218.49 110 M245.99 82.5 C246.37 100.16, 235.72 107.99, 218.49 110 M218.49 110 C172.37 108.45, 125.28 110.4, 27.5 110 M218.49 110 C157.06 110.96, 95.93 111.11, 27.5 110 M27.5 110 C9.63 110.56, -1.86 100.96, 0 82.5 M27.5 110 C10.33 110.1, -1.31 101.57, 0 82.5 M0 82.5 C-0.26 66.38, 0.89 53.45, 0 27.5 M0 82.5 C-1.05 70.85, -0.43 58.5, 0 27.5 M0 27.5 C0.62 9.6, 8.58 -1.93, 27.5 0 M0 27.5 C0.05 9.64, 10.37 -1.93, 27.5 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(1089.6910206003004 1325.5448916604203) rotate(0 112.67990112304688 25)"><text x="112.67990112304688" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">hash the root of this </text><text x="112.67990112304688" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">tree with the salt</text></g><g stroke-linecap="round" transform="translate(430.92202544395127 1432.5284998538252) rotate(0 122.99280919396722 55)"><path d="M27.5 0 C69.75 3.25, 110.41 3.61, 218.49 0 M27.5 0 C70.34 0.52, 112.21 1.89, 218.49 0 M218.49 0 C238.35 1.16, 245.01 9.66, 245.99 27.5 M218.49 0 C235.29 1.31, 247.54 7.13, 245.99 27.5 M245.99 27.5 C246.33 37.88, 244.67 51.34, 245.99 82.5 M245.99 27.5 C246.45 39.39, 245.65 50.89, 245.99 82.5 M245.99 82.5 C247.88 101.35, 235.13 109.45, 218.49 110 M245.99 82.5 C248.05 99.77, 237.77 109.25, 218.49 110 M218.49 110 C160.89 107.89, 101.65 110.87, 27.5 110 M218.49 110 C171.58 111.99, 123.99 112.54, 27.5 110 M27.5 110 C8.64 109.91, -0.12 98.85, 0 82.5 M27.5 110 C7.3 109.48, -0.47 102.84, 0 82.5 M0 82.5 C1.5 65.68, 0.48 48.19, 0 27.5 M0 82.5 C-0.08 64.13, 0.85 46.71, 0 27.5 M0 27.5 C-1.25 8.84, 9.5 -0.44, 27.5 0 M0 27.5 C1.55 8.92, 10.42 1.48, 27.5 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(438.04493107346525 1437.5284998538252) rotate(0 115.86990356445312 50)"><text x="115.86990356445312" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">6. Compute the </text><text x="115.86990356445312" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">commitment of the new </text><text x="115.86990356445312" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">spent voice credits </text><text x="115.86990356445312" y="75" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">value</text></g><g stroke-linecap="round" transform="translate(439.2567829120376 1567.3188189165437) rotate(0 122.99280919396722 55)"><path d="M27.5 0 C90.52 -0.6, 151.46 0.6, 218.49 0 M27.5 0 C97.52 1.81, 169.62 0.83, 218.49 0 M218.49 0 C236.02 -0.53, 247.41 8.82, 245.99 27.5 M218.49 0 C237.99 0.18, 245.72 11.24, 245.99 27.5 M245.99 27.5 C245.2 45.98, 246.11 60.97, 245.99 82.5 M245.99 27.5 C244.66 47.2, 245.87 66.78, 245.99 82.5 M245.99 82.5 C247.23 102.46, 236.82 108.71, 218.49 110 M245.99 82.5 C245.18 100.26, 236.65 111.21, 218.49 110 M218.49 110 C174.33 112.06, 130.06 108.7, 27.5 110 M218.49 110 C151.82 107.34, 84.03 107.52, 27.5 110 M27.5 110 C8.55 108.28, -0.41 99.82, 0 82.5 M27.5 110 C8.68 109.77, 1.59 99.12, 0 82.5 M0 82.5 C-1.13 63.48, -1.42 47.09, 0 27.5 M0 82.5 C1.07 64.66, 0.57 44.18, 0 27.5 M0 27.5 C0.66 7.5, 9 1.14, 27.5 0 M0 27.5 C-1.28 11.02, 11.04 0.99, 27.5 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(467.6096766396961 1572.3188189165437) rotate(0 94.6399154663086 50)"><text x="94.6399154663086" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">7. Compute the </text><text x="94.6399154663086" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">commitment of the </text><text x="94.6399154663086" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">perVO spent voice </text><text x="94.6399154663086" y="75" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">credits commitment</text></g><g stroke-linecap="round" transform="translate(439.59461594655727 1715.669171718852) rotate(0 122.99280919396722 55)"><path d="M27.5 0 C69.52 -1.3, 110.8 1.07, 218.49 0 M27.5 0 C69.6 -0.45, 111.53 0.37, 218.49 0 M218.49 0 C236.85 0.68, 245.85 9.63, 245.99 27.5 M218.49 0 C235.56 1.85, 246.47 8, 245.99 27.5 M245.99 27.5 C246.65 43.52, 246.13 55.63, 245.99 82.5 M245.99 27.5 C245.76 46.28, 246.12 64.87, 245.99 82.5 M245.99 82.5 C245.6 101.41, 235.99 109.65, 218.49 110 M245.99 82.5 C244.52 102.72, 238.59 110.92, 218.49 110 M218.49 110 C177.7 108.67, 136.02 110.25, 27.5 110 M218.49 110 C152.63 111.71, 87.91 110.97, 27.5 110 M27.5 110 C10.99 109.3, -1.29 100.88, 0 82.5 M27.5 110 C10.66 108.62, -0.66 100.45, 0 82.5 M0 82.5 C0.93 64.72, -0.87 47.53, 0 27.5 M0 82.5 C0.06 65.71, 0.37 48.24, 0 27.5 M0 27.5 C1.75 7.54, 7.79 0.27, 27.5 0 M0 27.5 C-2.27 11.04, 10.22 0.95, 27.5 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(459.8675078431611 1745.669171718852) rotate(0 102.71991729736328 25)"><text x="102.71991729736328" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">8. Compute the new </text><text x="102.71991729736328" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">tallyCommitment</text></g><g stroke-linecap="round" transform="translate(831.7990770039205 1708.797885489622) rotate(0 240.28566206938808 80)"><path d="M32 0 C116.56 -2.09, 203.11 -1.17, 448.57 0 M32 0 C157.81 0.76, 282.61 0.91, 448.57 0 M448.57 0 C468.62 -1.93, 481.22 11.85, 480.57 32 M448.57 0 C471.63 -1.22, 480.91 9.46, 480.57 32 M480.57 32 C479.95 55.64, 482.39 76.99, 480.57 128 M480.57 32 C479.49 64.13, 479.59 94.38, 480.57 128 M480.57 128 C479.17 147.46, 469.76 159.26, 448.57 160 M480.57 128 C479.91 148.74, 471.41 160.94, 448.57 160 M448.57 160 C323.53 160.99, 197.07 161.39, 32 160 M448.57 160 C364.26 158.41, 280.04 158.46, 32 160 M32 160 C11.09 161.8, -1.84 149.62, 0 128 M32 160 C12.38 161.01, -2.28 147.5, 0 128 M0 128 C1.96 103.11, -0.4 75.09, 0 32 M0 128 C1.14 103.02, 1.42 75.51, 0 32 M0 32 C-0.86 10.92, 11.21 -0.45, 32 0 M0 32 C1.08 9.88, 10.76 -0.4, 32 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(885.7749246201834 1751.297885489622) rotate(0 186.309814453125 37.5)"><text x="186.309814453125" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">hash(newResultsCommitmentHash, </text><text x="186.309814453125" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">newSpentVoiceCreditsCommitmentHash, </text><text x="186.309814453125" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">newPerVOCommitmentHash)</text></g><g stroke-linecap="round"><g transform="translate(716.9307193898742 1772.0932342743179) rotate(0 32.3183002870245 0.3167167035071543)"><path d="M-0.71 0.69 C10.31 0.69, 55.02 0.17, 65.81 0.01 M1.12 0 C12.12 0.16, 55.18 1.13, 65.48 1.22" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(716.9307193898742 1772.0932342743179) rotate(0 32.3183002870245 0.3167167035071543)"><path d="M37.12 11.01 C46.04 10.46, 51.62 4.79, 65.48 1.22 M37.12 11.01 C43.75 8.36, 49.18 6, 65.48 1.22" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(716.9307193898742 1772.0932342743179) rotate(0 32.3183002870245 0.3167167035071543)"><path d="M37.47 -9.51 C46.28 -4.44, 51.77 -4.49, 65.48 1.22 M37.47 -9.51 C44 -7.58, 49.36 -5.37, 65.48 1.22" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g></g><mask></mask><g stroke-linecap="round" transform="translate(438.0535419671721 1848.5076951335047) rotate(0 122.99280919396722 55)"><path d="M27.5 0 C76.99 2.27, 126.8 3, 218.49 0 M27.5 0 C100.01 -1.5, 169.61 -0.27, 218.49 0 M218.49 0 C235.53 -0.62, 247.09 7.9, 245.99 27.5 M218.49 0 C234.95 -0.19, 243.84 8.88, 245.99 27.5 M245.99 27.5 C247.07 42.8, 247.17 59.28, 245.99 82.5 M245.99 27.5 C246.97 42.81, 246.62 55.97, 245.99 82.5 M245.99 82.5 C246.68 102.49, 236.02 109.34, 218.49 110 M245.99 82.5 C244.44 102.24, 238.34 109, 218.49 110 M218.49 110 C155.39 110.65, 88.06 107.41, 27.5 110 M218.49 110 C160.44 108.62, 100.95 110.27, 27.5 110 M27.5 110 C10.97 108.3, 0.63 101, 0 82.5 M27.5 110 C9.5 109.24, 0.25 101.83, 0 82.5 M0 82.5 C-0.68 63.48, 1.76 46.56, 0 27.5 M0 82.5 C-0.95 66.75, 0.42 50.67, 0 27.5 M0 27.5 C1.86 7.99, 9.06 0.18, 27.5 0 M0 27.5 C-1.6 8.54, 8.26 -0.78, 27.5 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(447.206446375983 1853.5076951335047) rotate(0 113.83990478515625 50)"><text x="113.83990478515625" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">9. Ensure this matches</text><text x="113.83990478515625" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">with the </text><text x="113.83990478515625" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">newTallyCommitment </text><text x="113.83990478515625" y="75" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">output</text></g><g stroke-linecap="round" transform="translate(851.8064522582363 1440.1848434670612) rotate(0 122.9928091939671 55)"><path d="M27.5 0 C67.91 -2.15, 105.02 -1.2, 218.49 0 M27.5 0 C78.33 1.04, 131.93 0.85, 218.49 0 M218.49 0 C237.89 -1.19, 245.21 11.13, 245.99 27.5 M218.49 0 C234.65 2.02, 247.94 9.78, 245.99 27.5 M245.99 27.5 C246.48 38.28, 247.16 48.88, 245.99 82.5 M245.99 27.5 C246.04 44.97, 246.99 62.19, 245.99 82.5 M245.99 82.5 C244.58 98.89, 235.41 111.55, 218.49 110 M245.99 82.5 C245.4 102.38, 238.19 109.9, 218.49 110 M218.49 110 C150.83 111.23, 83.12 109.11, 27.5 110 M218.49 110 C176.7 111.08, 133.45 111.16, 27.5 110 M27.5 110 C8.44 111.28, 1.12 102.03, 0 82.5 M27.5 110 C11.18 109.25, 1.69 101.9, 0 82.5 M0 82.5 C1.61 61.47, 1.16 42.53, 0 27.5 M0 82.5 C0.86 62.9, -0.5 44.26, 0 27.5 M0 27.5 C-1.25 7.42, 8.77 -1.18, 27.5 0 M0 27.5 C1.93 9.24, 9.3 -1.81, 27.5 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(858.1593765034731 1470.1848434670612) rotate(0 116.63988494873047 25)"><text x="116.63988494873047" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">hash(newSpentVoiceCredi</text><text x="116.63988494873047" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">tSubtotal, salt)</text></g><g stroke-linecap="round"><g transform="translate(737.524650946222 1485.229023393976) rotate(0 46.673890329224264 0.5273788440053977)"><path d="M-0.37 0.09 C15.3 0.2, 77.64 1.09, 93.39 1.06 M1.63 -0.91 C17.21 -0.63, 77.11 2.34, 92.46 2.6" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(737.524650946222 1485.229023393976) rotate(0 46.673890329224264 0.5273788440053977)"><path d="M63.93 11.87 C71.06 9.74, 77.94 8.64, 92.46 2.6 M63.93 11.87 C70.6 9.11, 76.1 7.58, 92.46 2.6" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(737.524650946222 1485.229023393976) rotate(0 46.673890329224264 0.5273788440053977)"><path d="M64.64 -8.64 C71.67 -5.73, 78.37 -1.78, 92.46 2.6 M64.64 -8.64 C71.28 -7.21, 76.64 -4.57, 92.46 2.6" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g></g><mask></mask><g stroke-linecap="round" transform="translate(852.9540442623734 1573.779016803481) rotate(0 122.9928091939671 55)"><path d="M27.5 0 C101.62 -1.48, 172.61 -1.74, 218.49 0 M27.5 0 C77.86 -0.51, 126 -0.64, 218.49 0 M218.49 0 C237.98 -0.46, 247.69 7.52, 245.99 27.5 M218.49 0 C238.94 -0.82, 244.59 7.74, 245.99 27.5 M245.99 27.5 C245.7 38.54, 245.34 52.74, 245.99 82.5 M245.99 27.5 C246.45 42.87, 246.3 56.42, 245.99 82.5 M245.99 82.5 C246.13 102.3, 238.65 109.2, 218.49 110 M245.99 82.5 C246.62 99.05, 237.44 110.03, 218.49 110 M218.49 110 C177.01 112.06, 133.07 112.49, 27.5 110 M218.49 110 C154.03 109.37, 89.74 109.26, 27.5 110 M27.5 110 C9.61 110.55, 1.09 99.7, 0 82.5 M27.5 110 C7.03 108.44, 1.6 100.27, 0 82.5 M0 82.5 C-0.41 68.23, 1.93 58.04, 0 27.5 M0 82.5 C0.33 61.2, 0.06 39.96, 0 27.5 M0 27.5 C-1.46 8.59, 9.21 -1.92, 27.5 0 M0 27.5 C1.62 8.58, 7.53 -1.64, 27.5 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(861.8569639299735 1578.779016803481) rotate(0 114.08988952636719 50)"><text x="114.08988952636719" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">use QuinCheckRoot and</text><text x="114.08988952636719" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">pass all items in </text><text x="114.08988952636719" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">currentPerVOSpentVoice</text><text x="114.08988952636719" y="75" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">Credits</text></g><g stroke-linecap="round" transform="translate(1129.6904353683462 1572.2656922756616) rotate(0 122.9928091939671 55)"><path d="M27.5 0 C73.54 1.74, 121.84 2.87, 218.49 0 M27.5 0 C87.46 -0.18, 147.12 -0.77, 218.49 0 M218.49 0 C238.66 -0.72, 244.77 7.92, 245.99 27.5 M218.49 0 C235.12 -1.59, 244.7 9.28, 245.99 27.5 M245.99 27.5 C245.24 40, 247.77 53.74, 245.99 82.5 M245.99 27.5 C246.25 48.7, 247.09 68.03, 245.99 82.5 M245.99 82.5 C246.54 99.28, 237.35 110.02, 218.49 110 M245.99 82.5 C244.21 102.53, 237.42 111.23, 218.49 110 M218.49 110 C147.09 110.92, 74.42 111.49, 27.5 110 M218.49 110 C176.62 108.53, 134.86 107.69, 27.5 110 M27.5 110 C7.31 108.64, 1.39 100.34, 0 82.5 M27.5 110 C7.74 109.06, -0.66 100.1, 0 82.5 M0 82.5 C1.27 68.56, 0.33 56.24, 0 27.5 M0 82.5 C-0.67 65.8, 0.09 48.71, 0 27.5 M0 27.5 C1.41 8.66, 7.75 -1.43, 27.5 0 M0 27.5 C1.5 8.72, 7.16 0.25, 27.5 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(1140.0033434392667 1589.7656922756616) rotate(0 112.67990112304688 37.5)"><text x="112.67990112304688" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">hash the root of this </text><text x="112.67990112304688" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">tree with the perVO </text><text x="112.67990112304688" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">salt</text></g><g stroke-linecap="round"><g transform="translate(723.7552007764552 1618.77903026627) rotate(0 46.673890329224264 0.5273788440053977)"><path d="M-0.71 -0.17 C15 0.22, 77.83 2.05, 93.7 2.21 M1.11 -1.31 C16.75 -1.21, 77.4 0.15, 92.93 0.69" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(723.7552007764552 1618.77903026627) rotate(0 46.673890329224264 0.5273788440053977)"><path d="M64.47 10.17 C71.38 8.53, 80.79 7.43, 92.93 0.69 M64.47 10.17 C71.45 7.3, 79.49 4.85, 92.93 0.69" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(723.7552007764552 1618.77903026627) rotate(0 46.673890329224264 0.5273788440053977)"><path d="M65.03 -10.34 C71.78 -6.8, 81.04 -2.72, 92.93 0.69 M65.03 -10.34 C71.8 -7.55, 79.68 -4.35, 92.93 0.69" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g></g><mask></mask></svg>
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1661.2121931184993 925.9417364201454" width="4983.636579355498" height="2777.825209260436">
|
|
2
|
+
<!-- svg-source:excalidraw -->
|
|
3
|
+
|
|
4
|
+
<defs>
|
|
5
|
+
<style class="style-fonts">
|
|
6
|
+
@font-face {
|
|
7
|
+
font-family: "Virgil";
|
|
8
|
+
src: url("https://excalidraw.com/Virgil.woff2");
|
|
9
|
+
}
|
|
10
|
+
@font-face {
|
|
11
|
+
font-family: "Cascadia";
|
|
12
|
+
src: url("https://excalidraw.com/Cascadia.woff2");
|
|
13
|
+
}
|
|
14
|
+
@font-face {
|
|
15
|
+
font-family: "Assistant";
|
|
16
|
+
src: url("https://excalidraw.com/Assistant-Regular.woff2");
|
|
17
|
+
}
|
|
18
|
+
</style>
|
|
19
|
+
|
|
20
|
+
</defs>
|
|
21
|
+
<rect x="0" y="0" width="1661.2121931184993" height="925.9417364201454" fill="#ffffff"></rect><g stroke-linecap="round" transform="translate(317.97030764025294 332.6192072857632) rotate(0 114.33810379333909 33.800522136203085)"><path d="M16.9 0 C84.57 -0.25, 156.17 -0.52, 211.78 0 M16.9 0 C94.58 -0.08, 171.56 0.88, 211.78 0 M211.78 0 C221.47 -1.29, 229.02 4.96, 228.68 16.9 M211.78 0 C222.55 -1.55, 229.14 4.05, 228.68 16.9 M228.68 16.9 C228.42 31.65, 230.23 43.99, 228.68 50.7 M228.68 16.9 C229.27 31.38, 228.62 43.93, 228.68 50.7 M228.68 50.7 C227.43 60.23, 222.54 67.96, 211.78 67.6 M228.68 50.7 C228.19 61.36, 222.6 66.19, 211.78 67.6 M211.78 67.6 C147.03 68.89, 83.9 69.66, 16.9 67.6 M211.78 67.6 C150.66 68.65, 90.69 68.44, 16.9 67.6 M16.9 67.6 C6.37 66.97, 1.4 63.35, 0 50.7 M16.9 67.6 C3.38 66.78, 0.24 60.69, 0 50.7 M0 50.7 C-0.88 39.25, 1.39 29.82, 0 16.9 M0 50.7 C0.75 39.35, -0.4 26.18, 0 16.9 M0 16.9 C-1.14 5.26, 5.22 -1.99, 16.9 0 M0 16.9 C-1.84 4.33, 3.82 0, 16.9 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(401.6884468339822 353.91972942196617) rotate(0 30.619964599609375 12.5)"><text x="30.619964599609375" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#e03131" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">Splicer</text></g><g stroke-linecap="round" transform="translate(449.18206115463545 187.0279473224166) rotate(0 110.05757116156974 32.17741655087593)"><path d="M16.09 0 C84.99 -0.5, 149.42 -0.91, 204.03 0 M16.09 0 C60.59 -1.34, 106.84 -1.03, 204.03 0 M204.03 0 C214.32 -1.35, 220.52 3.99, 220.12 16.09 M204.03 0 C216.57 -0.66, 222.32 5.18, 220.12 16.09 M220.12 16.09 C222.38 30.13, 222.14 42.38, 220.12 48.27 M220.12 16.09 C219.41 27.97, 219.78 41.77, 220.12 48.27 M220.12 48.27 C219.69 58.46, 214.37 63.13, 204.03 64.35 M220.12 48.27 C220.73 58.78, 216.14 63.08, 204.03 64.35 M204.03 64.35 C146.81 63.18, 89.26 63.58, 16.09 64.35 M204.03 64.35 C129.4 65.5, 54.74 66.51, 16.09 64.35 M16.09 64.35 C3.4 63.65, 0.21 57.88, 0 48.27 M16.09 64.35 C4.96 64.9, -0.06 58.07, 0 48.27 M0 48.27 C1.04 42.77, 0.4 36.93, 0 16.09 M0 48.27 C-0.5 35.38, -0.14 21.87, 0 16.09 M0 16.09 C-1.6 4.23, 3.79 0, 16.09 0 M0 16.09 C-1.33 7.46, 6 -0.29, 16.09 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(456.7397162395455 194.20536387329253) rotate(0 102.49991607666016 25)"><text x="102.49991607666016" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">inputs (array of len </text><text x="102.49991607666016" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">numItems)</text></g><g stroke-linecap="round"><g transform="translate(419.55349741992904 282.9496010902087) rotate(0 -0.44580281989510695 19.782500132839004)"><path d="M-0.03 -0.32 C-0.27 6.33, -1.13 33.18, -1.34 39.77 M-0.71 0.7 C-0.79 7.2, -0.42 32.42, -0.34 38.91" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(419.55349741992904 282.9496010902087) rotate(0 -0.44580281989510695 19.782500132839004)"><path d="M-7.35 20.4 C-5.75 25.42, -2.6 31.27, -0.34 38.91 M-7.35 20.4 C-5.79 24.44, -3.93 28.8, -0.34 38.91" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(419.55349741992904 282.9496010902087) rotate(0 -0.44580281989510695 19.782500132839004)"><path d="M6.18 20.23 C3.52 25.29, 2.42 31.2, -0.34 38.91 M6.18 20.23 C4.56 24.28, 3.22 28.68, -0.34 38.91" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g></g><mask></mask><g stroke-linecap="round" transform="translate(10 336.01546262869283) rotate(0 110.05757116156974 32.17741655087593)"><path d="M16.09 0 C72.13 -0.04, 125.4 1.88, 204.03 0 M16.09 0 C66.33 0.58, 116.97 0.98, 204.03 0 M204.03 0 C216.67 -0.16, 222.05 7.02, 220.12 16.09 M204.03 0 C216.43 2.3, 221.59 7.39, 220.12 16.09 M220.12 16.09 C220.4 25.72, 218.69 37.33, 220.12 48.27 M220.12 16.09 C219.85 25.71, 220.31 36.47, 220.12 48.27 M220.12 48.27 C221.33 57.88, 214.86 63.74, 204.03 64.35 M220.12 48.27 C221.13 59.21, 212.45 64.42, 204.03 64.35 M204.03 64.35 C164.24 64.22, 120.72 64.88, 16.09 64.35 M204.03 64.35 C134.72 63.13, 65.02 63.92, 16.09 64.35 M16.09 64.35 C5.31 63.55, -1.9 60.46, 0 48.27 M16.09 64.35 C3.33 65.82, 1.28 59.72, 0 48.27 M0 48.27 C-0.15 34.47, -0.68 22.53, 0 16.09 M0 48.27 C-0.53 41.82, -0.32 36.28, 0 16.09 M0 16.09 C0.55 5.11, 5.12 0.52, 16.09 0 M0 16.09 C1.87 3.82, 7.54 0.9, 16.09 0" stroke="#f08c00" stroke-width="1" fill="none"></path></g><g transform="translate(17.837661493601445 355.69287917956876) rotate(0 102.21990966796875 12.5)"><text x="102.21990966796875" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#f08c00" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">parameter: numItems</text></g><g transform="translate(464.95521238312176 285.496456089053) rotate(0 31.809967041015625 12.5)"><text x="0" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="start" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">Inputs</text></g><g transform="translate(476.24144849512413 434.0633637955491) rotate(0 34.84996032714844 12.5)"><text x="0" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="start" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">Output</text></g><g stroke-linecap="round"><g transform="translate(415.2605813764967 432.79301002546003) rotate(0 0.22290140994755347 20.511057519056408)"><path d="M0.11 -0.38 C0.28 6.49, 0.74 33.97, 0.88 40.86 M-0.5 0.62 C-0.35 7.6, 0.44 34.66, 0.67 41.48" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(415.2605813764967 432.79301002546003) rotate(0 0.22290140994755347 20.511057519056408)"><path d="M-6.94 22.44 C-5.57 28.52, -3.05 34, 0.67 41.48 M-6.94 22.44 C-4.26 28.47, -2.08 33.97, 0.67 41.48" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(415.2605813764967 432.79301002546003) rotate(0 0.22290140994755347 20.511057519056408)"><path d="M7.08 22 C4.55 28.22, 3.16 33.82, 0.67 41.48 M7.08 22 C5.67 28.22, 3.75 33.85, 0.67 41.48" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g></g><mask></mask><g stroke-linecap="round" transform="translate(318.2396275262654 499.6911423923523) rotate(0 110.05757116156974 32.17741655087593)"><path d="M16.09 0 C75.68 0.43, 136.26 0.45, 204.03 0 M16.09 0 C88.64 -1, 160.3 -0.92, 204.03 0 M204.03 0 C214.21 -0.02, 218.87 3.63, 220.12 16.09 M204.03 0 C214.17 0.42, 219.63 4.76, 220.12 16.09 M220.12 16.09 C219.74 26.33, 218.81 34.26, 220.12 48.27 M220.12 16.09 C219.26 24.78, 219.46 34.4, 220.12 48.27 M220.12 48.27 C219.19 60.55, 215.49 63.73, 204.03 64.35 M220.12 48.27 C221.72 60.59, 212.5 63.54, 204.03 64.35 M204.03 64.35 C146.16 63.97, 86.56 62.13, 16.09 64.35 M204.03 64.35 C134.44 65.87, 64.67 66.5, 16.09 64.35 M16.09 64.35 C4.94 64.51, -1.14 58.62, 0 48.27 M16.09 64.35 C4.89 62.07, -1.84 57.69, 0 48.27 M0 48.27 C1.83 41.7, -0.26 33.79, 0 16.09 M0 48.27 C0.68 38.16, -0.02 28.27, 0 16.09 M0 16.09 C-0.82 3.62, 4.53 -1.22, 16.09 0 M0 16.09 C-1.45 3.51, 4.07 2.18, 16.09 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(330.95727101449575 506.8685589432282) rotate(0 97.33992767333984 25)"><text x="97.33992767333984" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#2f9e44" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">output array of </text><text x="97.33992767333984" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#2f9e44" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">length numItems + 1</text></g><g stroke-linecap="round"><g transform="translate(245.41484743370165 369.4796940524359) rotate(0 24.516584875629633 -0.23062704764174669)"><path d="M0.53 0.45 C8.68 0.48, 41.29 0.16, 49.43 0.09 M0.14 0.21 C8.21 0.1, 41.03 -0.43, 49.21 -0.59" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(245.41484743370165 369.4796940524359) rotate(0 24.516584875629633 -0.23062704764174669)"><path d="M26.32 8.2 C36.22 5.34, 45.45 1.76, 49.21 -0.59 M26.32 8.2 C35.05 4.67, 43.75 0.83, 49.21 -0.59" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(245.41484743370165 369.4796940524359) rotate(0 24.516584875629633 -0.23062704764174669)"><path d="M26.02 -8.57 C36.03 -4.79, 45.39 -1.72, 49.21 -0.59 M26.02 -8.57 C34.9 -5.59, 43.72 -2.93, 49.21 -0.59" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g></g><mask></mask><g stroke-linecap="round" transform="translate(758.986193153969 14.166409573042756) rotate(0 110.05757116156974 32.17741655087593)"><path d="M16.09 0 C92.64 -0.09, 166.96 -0.61, 204.03 0 M16.09 0 C89.94 -0.85, 164.78 0.2, 204.03 0 M204.03 0 C214.33 -0.53, 219.73 4.14, 220.12 16.09 M204.03 0 C215.36 -0.21, 221.51 4.08, 220.12 16.09 M220.12 16.09 C220.21 23.92, 220.08 34.15, 220.12 48.27 M220.12 16.09 C220.33 28.62, 220.67 42.46, 220.12 48.27 M220.12 48.27 C218.15 58.28, 214.96 63.24, 204.03 64.35 M220.12 48.27 C219.72 59.53, 214.69 63.43, 204.03 64.35 M204.03 64.35 C166.74 63.8, 127.53 64.56, 16.09 64.35 M204.03 64.35 C129.29 64.31, 55.49 63.5, 16.09 64.35 M16.09 64.35 C3.76 63.22, -1.58 58.99, 0 48.27 M16.09 64.35 C4.03 66.46, 0.64 58.7, 0 48.27 M0 48.27 C-1.42 40.89, 0.7 30.22, 0 16.09 M0 48.27 C-0.28 34.8, -0.5 21.75, 0 16.09 M0 16.09 C-1.12 7.26, 6.25 0.46, 16.09 0 M0 16.09 C0.02 5.37, 4.34 1.78, 16.09 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(777.4938299283322 21.34382612391869) rotate(0 91.54993438720703 25)"><text x="91.54993438720703" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">1. Loop from 0 to </text><text x="91.54993438720703" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">numItems + 1</text></g><g transform="translate(603.0517117358013 311.0190766332371) rotate(0 49.669944763183594 12.5)"><text x="0" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="start" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">Processing</text></g><g stroke-linecap="round"><g transform="translate(585.8750994757429 371.6533977702295) rotate(0 54.049464108376924 -0.8482636989667753)"><path d="M-0.3 0.22 C17.8 0.06, 89.82 -1.57, 107.85 -2.01 M1.74 -0.71 C19.72 -0.61, 89.23 -0.51, 106.77 -0.64" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(585.8750994757429 371.6533977702295) rotate(0 54.049464108376924 -0.8482636989667753)"><path d="M78.6 9.68 C85.75 6.88, 91.56 4.45, 106.77 -0.64 M78.6 9.68 C85.9 6.69, 92.08 4.47, 106.77 -0.64" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(585.8750994757429 371.6533977702295) rotate(0 54.049464108376924 -0.8482636989667753)"><path d="M78.55 -10.84 C85.54 -8.76, 91.36 -6.3, 106.77 -0.64 M78.55 -10.84 C85.92 -8.93, 92.11 -6.25, 106.77 -0.64" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g></g><mask></mask><g stroke-linecap="round" transform="translate(206.28010490124143 185.44706760984673) rotate(0 110.05757116156974 32.17741655087593)"><path d="M16.09 0 C67.21 0.01, 118.16 0.93, 204.03 0 M16.09 0 C70.82 0.74, 125.88 1.14, 204.03 0 M204.03 0 C212.75 0.06, 218.51 7.34, 220.12 16.09 M204.03 0 C213.69 1.79, 220.96 4.64, 220.12 16.09 M220.12 16.09 C219.63 28.2, 219.23 39.54, 220.12 48.27 M220.12 16.09 C219.16 27.23, 219.22 37.55, 220.12 48.27 M220.12 48.27 C221.23 59.63, 216.62 66.25, 204.03 64.35 M220.12 48.27 C219.62 59.17, 213.45 63.92, 204.03 64.35 M204.03 64.35 C150.41 61.27, 99.06 61.7, 16.09 64.35 M204.03 64.35 C130.35 64.38, 57.74 63.45, 16.09 64.35 M16.09 64.35 C7.26 65.14, 0.49 60.98, 0 48.27 M16.09 64.35 C4.42 62.35, -0.96 57.59, 0 48.27 M0 48.27 C2.15 41.52, 0.72 33.03, 0 16.09 M0 48.27 C-0.76 39.4, 0.19 29.21, 0 16.09 M0 16.09 C0.15 4.35, 5.09 -1.84, 16.09 0 M0 16.09 C-0.13 5.68, 4.27 1.04, 16.09 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(296.7076940681827 205.12448416072266) rotate(0 19.629981994628906 12.5)"><text x="19.629981994628906" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">leaf</text></g><g stroke-linecap="round" transform="translate(328.0691399267289 100.45920892080494) rotate(0 110.05757116156974 32.17741655087593)"><path d="M16.09 0 C84.82 0.58, 157.21 0.17, 204.03 0 M16.09 0 C87.13 -0.5, 160.85 -0.1, 204.03 0 M204.03 0 C213.48 -0.02, 220.29 4.41, 220.12 16.09 M204.03 0 C215.66 0.44, 220.74 6.11, 220.12 16.09 M220.12 16.09 C220.94 27.96, 219.49 39.69, 220.12 48.27 M220.12 16.09 C219.39 27.97, 220.65 39.39, 220.12 48.27 M220.12 48.27 C218.62 60.96, 216.38 65.02, 204.03 64.35 M220.12 48.27 C220.57 57.97, 212.9 64.1, 204.03 64.35 M204.03 64.35 C140.49 62.92, 80.07 61.1, 16.09 64.35 M204.03 64.35 C139.51 64.43, 72.72 64.06, 16.09 64.35 M16.09 64.35 C6.83 64.17, -0.75 58.7, 0 48.27 M16.09 64.35 C5.2 64.3, -0.14 60.65, 0 48.27 M0 48.27 C-1.04 36.85, 0.77 22.14, 0 16.09 M0 48.27 C-0.88 40.92, 0.59 32.98, 0 16.09 M0 16.09 C-1.78 6.2, 6.42 0.06, 16.09 0 M0 16.09 C-0.3 3.29, 6.74 -0.9, 16.09 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(414.48673458683425 120.13662547168087) rotate(0 23.639976501464844 12.5)"><text x="23.639976501464844" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">index</text></g><g stroke-linecap="round" transform="translate(756.1797517744817 108.38070020391842) rotate(0 110.05757116156974 42.5)"><path d="M21.25 0 C80.18 0.22, 142.25 -1.16, 198.87 0 M21.25 0 C73.85 -0.59, 124.13 -1.34, 198.87 0 M198.87 0 C213.78 -1.86, 221.26 8.05, 220.12 21.25 M198.87 0 C212.7 0.5, 218.39 5.86, 220.12 21.25 M220.12 21.25 C217.82 30.44, 219.56 40.15, 220.12 63.75 M220.12 21.25 C219.61 30.86, 221.09 39.16, 220.12 63.75 M220.12 63.75 C219.63 77.8, 213.06 83.77, 198.87 85 M220.12 63.75 C222.09 79.28, 214.62 82.95, 198.87 85 M198.87 85 C158.67 86.76, 115.11 85.13, 21.25 85 M198.87 85 C157.12 83.04, 114.49 82.95, 21.25 85 M21.25 85 C6.07 83.17, 0.28 78.24, 0 63.75 M21.25 85 C5.75 84.59, -0.49 78.51, 0 63.75 M0 63.75 C-1 53.48, 0.23 44.14, 0 21.25 M0 63.75 C0.72 47.09, 0.63 29.88, 0 21.25 M0 21.25 C0.83 8.8, 6.18 -1.23, 21.25 0 M0 21.25 C-1.25 7.35, 5.58 0.46, 21.25 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(769.0274077749191 113.38070020391842) rotate(0 97.20991516113281 37.5)"><text x="97.20991516113281" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">2. compare input </text><text x="97.20991516113281" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">index with the loop </text><text x="97.20991516113281" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">index (i) </text></g><g stroke-linecap="round" transform="translate(750.2785129572394 205.91811713901166) rotate(0 129.40052343244815 67.5)"><path d="M32 0 C90.32 -3.5, 144.23 -0.19, 226.8 0 M32 0 C73.76 0.77, 113.86 0.76, 226.8 0 M226.8 0 C248.25 0.42, 258.53 10.73, 258.8 32 M226.8 0 C248.66 1.94, 257.93 11.88, 258.8 32 M258.8 32 C259.96 48.74, 257.52 62.45, 258.8 103 M258.8 32 C259.07 56.91, 260.15 81.68, 258.8 103 M258.8 103 C256.87 122.99, 249.45 133, 226.8 135 M258.8 103 C258.71 125.37, 248.31 134.27, 226.8 135 M226.8 135 C172.77 136.52, 119.28 136.71, 32 135 M226.8 135 C177.81 134.65, 127.36 133.66, 32 135 M32 135 C10.23 133.23, 0.95 125.13, 0 103 M32 135 C12.44 132.78, 1.79 123.99, 0 103 M0 103 C0.85 87.29, 2.2 71.81, 0 32 M0 103 C0.69 79.2, 0.25 54.66, 0 32 M0 32 C-0.43 10.42, 12.3 -1.91, 32 0 M0 32 C-0.87 9.51, 9.7 -1.01, 32 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(756.6591465581441 223.41811713901166) rotate(0 123.01988983154297 50)"><text x="123.01988983154297" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">3. use QuinSelector to </text><text x="123.01988983154297" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">get the item at position</text><text x="123.01988983154297" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">i - </text><text x="123.01988983154297" y="75" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">SafeGreaterThan.output</text></g><g stroke-linecap="round" transform="translate(1084.300893945141 10) rotate(0 75.13977420504852 92.5)"><path d="M32 0 C51.65 -1.95, 73.01 1.08, 118.28 0 M32 0 C50.88 -0.06, 70.59 -0.87, 118.28 0 M118.28 0 C137.75 1.79, 148.52 10.7, 150.28 32 M118.28 0 C141.88 1.99, 151.5 9.84, 150.28 32 M150.28 32 C150.69 67.62, 151.84 103.44, 150.28 153 M150.28 32 C150.38 63.07, 151.47 92.58, 150.28 153 M150.28 153 C148.56 175.89, 138.17 185.79, 118.28 185 M150.28 153 C152.54 175.41, 141.11 183.71, 118.28 185 M118.28 185 C93.34 184.66, 67.41 187.41, 32 185 M118.28 185 C84.47 184.02, 49.16 183.94, 32 185 M32 185 C10.49 183.91, -1.14 173.29, 0 153 M32 185 C9.97 186.94, -0.12 176.47, 0 153 M0 153 C0.02 119.42, 1.26 89.85, 0 32 M0 153 C-0.27 116.04, -0.16 78.15, 0 32 M0 32 C-0.56 11.57, 12.27 0.85, 32 0 M0 32 C1.57 11.48, 10.11 -1.73, 32 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(1092.26072888017 15) rotate(0 67.17993927001953 87.5)"><text x="67.17993927001953" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">use </text><text x="67.17993927001953" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">SafeGreater</text><text x="67.17993927001953" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">Than with </text><text x="67.17993927001953" y="75" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">inputs i and </text><text x="67.17993927001953" y="100" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">index to </text><text x="67.17993927001953" y="125" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">check whether</text><text x="67.17993927001953" y="150" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">i > index</text></g><g stroke-linecap="round"><g transform="translate(987.3984043562268 138.42669543005127) rotate(0 40.18022924569368 -14.669761092601334)"><path d="M-0.07 -0.39 C13.14 -5.24, 66.48 -25.08, 79.88 -29.81 M-1.57 -1.63 C11.39 -6.26, 65.16 -23.66, 78.67 -28.52" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(987.3984043562268 138.42669543005127) rotate(0 40.18022924569368 -14.669761092601334)"><path d="M55.28 -9.74 C62.92 -17.1, 70.95 -22.95, 78.67 -28.52 M55.28 -9.74 C62.99 -17.35, 70.65 -22.21, 78.67 -28.52" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(987.3984043562268 138.42669543005127) rotate(0 40.18022924569368 -14.669761092601334)"><path d="M48.68 -29.17 C58.51 -29.73, 68.85 -28.8, 78.67 -28.52 M48.68 -29.17 C58.66 -30.06, 68.62 -28.16, 78.67 -28.52" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g></g><mask></mask><g stroke-linecap="round" transform="translate(1076.2054654773992 204.6119361823212) rotate(0 131.73044373868015 80)"><path d="M32 0 C73.4 -0.63, 110.87 0.07, 231.46 0 M32 0 C102.79 -0.45, 175.39 1.03, 231.46 0 M231.46 0 C254.07 -0.06, 261.69 10.68, 263.46 32 M231.46 0 C250.88 1.57, 261.58 10.52, 263.46 32 M263.46 32 C264.68 53.47, 265.49 77.83, 263.46 128 M263.46 32 C264.94 64.08, 264.91 97.26, 263.46 128 M263.46 128 C264.54 148.09, 253.54 159.72, 231.46 160 M263.46 128 C262.81 150, 252.73 160.79, 231.46 160 M231.46 160 C186.74 161.22, 138.99 161.09, 32 160 M231.46 160 C177.45 162.17, 124.88 162.83, 32 160 M32 160 C8.92 160.66, -1.98 149.39, 0 128 M32 160 C8.95 159.18, 1.39 147.67, 0 128 M0 128 C1.01 102.77, -0.01 78.34, 0 32 M0 128 C-0.64 99.92, -1.13 72.99, 0 32 M0 32 C1.06 9.3, 11.75 0.26, 32 0 M0 32 C0.29 8.49, 9.98 -1.56, 32 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(1085.9060096189114 209.6119361823212) rotate(0 122.02989959716797 75)"><text x="122.02989959716797" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">if i > index</text><text x="122.02989959716797" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">QuinSelector index == i -</text><text x="122.02989959716797" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge"> 1</text><text x="122.02989959716797" y="75" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">else </text><text x="122.02989959716797" y="100" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">index == i - 0</text><text x="122.02989959716797" y="125" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge"></text></g><g stroke-linecap="round" transform="translate(1359.3924297874382 213.66365968804803) rotate(0 145.90988166553052 67.5)"><path d="M32 0 C113.1 0.29, 193.35 0.51, 259.82 0 M32 0 C119.33 -1.16, 206.29 -1.19, 259.82 0 M259.82 0 C280.03 -1.42, 289.93 10.1, 291.82 32 M259.82 0 C278.95 0.27, 293.51 10.12, 291.82 32 M291.82 32 C291.55 58.14, 291.75 83.15, 291.82 103 M291.82 32 C293.05 52.52, 292.78 73.7, 291.82 103 M291.82 103 C293.14 122.4, 282.21 136.63, 259.82 135 M291.82 103 C293.24 122.33, 281.64 135.08, 259.82 135 M259.82 135 C199.53 137.84, 136.87 137.19, 32 135 M259.82 135 C213.02 134.08, 166.14 134.19, 32 135 M32 135 C12.22 136.94, 0.19 124.35, 0 103 M32 135 C11.17 135.72, -2.17 122.11, 0 103 M0 103 C-0.14 83.36, 1.28 66.59, 0 32 M0 103 C0.34 79.07, 0.37 55.4, 0 32 M0 32 C0.98 9.28, 11.23 1.28, 32 0 M0 32 C-0.55 9.71, 10.98 1.63, 32 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(1367.0724377957422 218.66365968804803) rotate(0 138.22987365722656 62.5)"><text x="138.22987365722656" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge"> if i is greater than the </text><text x="138.22987365722656" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">index, the selected item will</text><text x="138.22987365722656" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">be one position to the left </text><text x="138.22987365722656" y="75" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">of the current position in </text><text x="138.22987365722656" y="100" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">the input array</text></g><g stroke-linecap="round"><g transform="translate(1021.443455986926 258.10821345077966) rotate(0 20.35269890637801 2.331826851129563)"><path d="M0.34 0.28 C7.11 1.13, 33.65 4.03, 40.42 4.82 M-0.14 -0.05 C6.82 0.65, 34.69 3.23, 41.51 3.93" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(1021.443455986926 258.10821345077966) rotate(0 20.35269890637801 2.331826851129563)"><path d="M21.67 9.05 C27.52 7.09, 32.63 6.71, 41.51 3.93 M21.67 9.05 C28.83 7.22, 35.77 4.85, 41.51 3.93" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(1021.443455986926 258.10821345077966) rotate(0 20.35269890637801 2.331826851129563)"><path d="M23.02 -4.9 C28.47 -3.1, 33.22 0.27, 41.51 3.93 M23.02 -4.9 C29.62 -1.65, 36.07 1.04, 41.51 3.93" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g></g><mask></mask><g stroke-linecap="round" transform="translate(747.9719038383319 369.6488128553551) rotate(0 129.40052343244815 67.5)"><path d="M32 0 C91.89 -1.71, 153.26 -1.72, 226.8 0 M32 0 C80.87 0.3, 130.33 0.78, 226.8 0 M226.8 0 C249.21 0.38, 259.17 9.61, 258.8 32 M226.8 0 C247.25 2.06, 257.95 9.65, 258.8 32 M258.8 32 C256.73 48.62, 260.09 63.83, 258.8 103 M258.8 32 C258.21 50.47, 258.81 70.53, 258.8 103 M258.8 103 C259 122.35, 248.96 136.59, 226.8 135 M258.8 103 C259.54 125.86, 246.08 132.74, 226.8 135 M226.8 135 C183.57 137.99, 145.15 136.39, 32 135 M226.8 135 C152.19 134.92, 76.47 134.09, 32 135 M32 135 C10.61 136.83, -0.97 126.19, 0 103 M32 135 C8.86 136.9, -2 126.63, 0 103 M0 103 C1.6 86.62, 0.43 70.46, 0 32 M0 103 C-0.64 81.19, -0.12 57.53, 0 32 M0 32 C1.33 11.24, 9.34 0.93, 32 0 M0 32 C2.07 10.04, 11.84 -1.92, 32 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(754.23252706326 374.6488128553551) rotate(0 123.13990020751953 62.5)"><text x="123.13990020751953" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">4. Inner loop through all</text><text x="123.13990020751953" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">items and pass them to </text><text x="123.13990020751953" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">QuinSelector as inputs </text><text x="123.13990020751953" y="75" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">The last item will be </text><text x="123.13990020751953" y="100" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">zero (position numItems)</text></g><g stroke-linecap="round" transform="translate(745.5052399869246 525.1414082493746) rotate(0 129.40052343244815 67.5)"><path d="M32 0 C97.27 0.21, 164.37 -0.38, 226.8 0 M32 0 C106.46 -1.58, 181.86 -0.98, 226.8 0 M226.8 0 C249.65 1.04, 257.27 12.34, 258.8 32 M226.8 0 C246.38 -1.14, 259.62 11.72, 258.8 32 M258.8 32 C257.36 48.6, 258.6 63.32, 258.8 103 M258.8 32 C259.59 58.22, 258.09 85.17, 258.8 103 M258.8 103 C260.63 125.59, 248.85 134.93, 226.8 135 M258.8 103 C256.67 123.28, 246.68 135.8, 226.8 135 M226.8 135 C180.36 134.05, 134.02 135.93, 32 135 M226.8 135 C151.48 136.07, 76.69 136.27, 32 135 M32 135 C10.79 133.51, 0.02 126.32, 0 103 M32 135 C11.74 134.9, 1.79 126.36, 0 103 M0 103 C1.74 90.22, 1.22 73.71, 0 32 M0 103 C0.62 79.76, 0.1 55.51, 0 32 M0 32 C1.37 10, 11.2 -1.74, 32 0 M0 32 C1.2 9.45, 10.99 -0.31, 32 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(751.1158540565793 567.6414082493746) rotate(0 123.78990936279297 25)"><text x="123.78990936279297" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">5. Using IsEqual check if</text><text x="123.78990936279297" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">i == index</text></g><g stroke-linecap="round" transform="translate(1098.6201762016244 552.7385743922013) rotate(0 142.09401926954797 30)"><path d="M15 0 C83.53 -2.43, 152.29 -0.77, 269.19 0 M15 0 C80.64 -0.66, 146.6 -0.01, 269.19 0 M269.19 0 C277.47 -0.54, 286.08 3.9, 284.19 15 M269.19 0 C280.59 -2.05, 283.77 3.02, 284.19 15 M284.19 15 C282.87 24.05, 284.42 34.42, 284.19 45 M284.19 15 C285.2 24.34, 284.9 33.01, 284.19 45 M284.19 45 C282.34 56.05, 278.04 59.59, 269.19 60 M284.19 45 C284.79 53.36, 279.69 58.17, 269.19 60 M269.19 60 C190.69 61.5, 115.01 61.29, 15 60 M269.19 60 C172.26 62.18, 76.84 60.87, 15 60 M15 60 C3.1 58.4, 1.45 54.67, 0 45 M15 60 C3.3 60.3, 2.08 55.94, 0 45 M0 45 C1.35 37.37, 1.1 26.11, 0 15 M0 45 C0.55 37.14, -0.22 28.2, 0 15 M0 15 C0.57 4.88, 6.82 -0.26, 15 0 M0 15 C0.13 3.95, 5.64 -0.77, 15 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(1117.0342943481255 557.7385743922013) rotate(0 123.67990112304688 25)"><text x="123.67990112304688" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">if i == index output is 1 </text><text x="123.67990112304688" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">else 0</text></g><g stroke-linecap="round"><g transform="translate(1020.3062868518218 587.0115570605581) rotate(0 31.156944674901297 -5.347403980994386)"><path d="M-0.4 -0.8 C9.84 -2.57, 51.64 -8.46, 62.26 -9.97 M1.59 1.39 C11.6 -0.77, 51.04 -9.51, 61.29 -11.71" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(1020.3062868518218 587.0115570605581) rotate(0 31.156944674901297 -5.347403980994386)"><path d="M35.93 4.33 C43.82 -1.56, 55.68 -5.68, 61.29 -11.71 M35.93 4.33 C44.88 -1.44, 55.28 -6.95, 61.29 -11.71" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(1020.3062868518218 587.0115570605581) rotate(0 31.156944674901297 -5.347403980994386)"><path d="M31.56 -15.72 C41.15 -14.23, 54.62 -11, 61.29 -11.71 M31.56 -15.72 C42.17 -14.12, 54.19 -12.23, 61.29 -11.71" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g></g><mask></mask><g stroke-linecap="round" transform="translate(752.8152005218626 679.8891038504536) rotate(0 286.1716097449503 51.79037207797484)"><path d="M25.9 0 C162.69 1.34, 298.79 1.33, 546.45 0 M25.9 0 C135.94 -1.71, 245.6 -1.46, 546.45 0 M546.45 0 C564.05 -0.78, 572.41 7.45, 572.34 25.9 M546.45 0 C564.42 -1.04, 571.66 10.63, 572.34 25.9 M572.34 25.9 C571.17 44.33, 572.86 61.43, 572.34 77.69 M572.34 25.9 C571.75 39.88, 572.42 54.31, 572.34 77.69 M572.34 77.69 C572.96 95.99, 564.21 104.71, 546.45 103.58 M572.34 77.69 C573.81 94.69, 563.04 104.92, 546.45 103.58 M546.45 103.58 C390.69 102.19, 235.68 102.28, 25.9 103.58 M546.45 103.58 C393.28 104.51, 239.57 104.26, 25.9 103.58 M25.9 103.58 C7.68 104.46, 1.86 95.02, 0 77.69 M25.9 103.58 C6.89 101.33, 1.26 93.61, 0 77.69 M0 77.69 C0.56 62.33, -1.5 43.55, 0 25.9 M0 77.69 C0.5 57.32, 0.32 37.81, 0 25.9 M0 25.9 C0.34 7.33, 9.28 0.9, 25.9 0 M0 25.9 C-0.66 8.11, 9.97 -0.06, 25.9 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(759.8870483039218 694.1794759284284) rotate(0 279.0997619628906 37.5)"><text x="279.0997619628906" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">6. Use a Mux component to select either the output of</text><text x="279.0997619628906" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">the QuinSelector component or the leaf, based on the </text><text x="279.0997619628906" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">check above (i == index)</text></g><g stroke-linecap="round" transform="translate(752.3650576403224 802.3985870181622) rotate(0 133.96821733427623 56.77157470099161)"><path d="M28.39 0 C92.52 2.95, 154.31 -0.2, 239.55 0 M28.39 0 C100.48 -1.89, 172.47 -0.25, 239.55 0 M239.55 0 C256.84 1.96, 267.13 11.03, 267.94 28.39 M239.55 0 C256.39 -1.96, 266.61 7.54, 267.94 28.39 M267.94 28.39 C269.47 47.6, 269.34 67.9, 267.94 85.16 M267.94 28.39 C267.24 50.25, 268.03 71.72, 267.94 85.16 M267.94 85.16 C267.86 106.01, 258.62 113.69, 239.55 113.54 M267.94 85.16 C267.94 105.97, 256.48 114.46, 239.55 113.54 M239.55 113.54 C196.03 111.49, 155.19 111.66, 28.39 113.54 M239.55 113.54 C159.53 113.81, 78.07 112.72, 28.39 113.54 M28.39 113.54 C10.72 113.19, 0.35 104.2, 0 85.16 M28.39 113.54 C8.5 112.69, 1.21 104.37, 0 85.16 M0 85.16 C-0.74 63.25, -0.7 40.17, 0 28.39 M0 85.16 C-1.26 65.89, -0.25 48.13, 0 28.39 M0 28.39 C1.64 11.43, 8.59 0.24, 28.39 0 M0 28.39 C-2.18 10.24, 9.39 -0.11, 28.39 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(758.1433946035049 821.6701617191538) rotate(0 128.18988037109375 37.5)"><text x="128.18988037109375" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">7. Wire the output of the</text><text x="128.18988037109375" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">Mux to the output array</text><text x="128.18988037109375" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">at position i </text></g><g stroke-linecap="round" transform="translate(1106.1389616361093 376.33936569124626) rotate(0 145.90988166553052 80)"><path d="M32 0 C120.26 0.43, 206.47 0.62, 259.82 0 M32 0 C85.51 1.22, 139.7 1.5, 259.82 0 M259.82 0 C279.23 1.66, 291.33 11.79, 291.82 32 M259.82 0 C280.25 -2.21, 292.92 10.07, 291.82 32 M291.82 32 C291.63 60.29, 292.24 87.01, 291.82 128 M291.82 32 C292.58 64.14, 291.98 97.3, 291.82 128 M291.82 128 C291.11 149.42, 280.35 160.65, 259.82 160 M291.82 128 C291.95 150.82, 281.94 159.47, 259.82 160 M259.82 160 C204.99 161.48, 149.42 161.62, 32 160 M259.82 160 C183.98 158.28, 107.64 157.87, 32 160 M32 160 C12.33 158.98, 0.78 148.94, 0 128 M32 160 C8.49 157.98, 0.62 148.89, 0 128 M0 128 C-0.88 107.36, -1.42 87.3, 0 32 M0 128 C0.3 109.39, 0.92 88.5, 0 32 M0 32 C-0.63 9.16, 11.76 1.4, 32 0 M0 32 C-0.22 8.94, 10.71 -1.94, 32 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(1115.9989470614055 381.33936569124637) rotate(0 136.04989624023438 75)"><text x="136.04989624023438" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">The last item is zero </text><text x="136.04989624023438" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">because the output array </text><text x="136.04989624023438" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">has 1 extra item compared </text><text x="136.04989624023438" y="75" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">to the input array, and </text><text x="136.04989624023438" y="100" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">they need to be of the </text><text x="136.04989624023438" y="125" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">same length</text></g><g stroke-linecap="round"><g transform="translate(1035.4572025971438 440.6995186385069) rotate(0 20.892970254659303 -0.1444174200888142)"><path d="M-0.33 -0.37 C6.73 -0.51, 35.16 -0.78, 42.15 -0.69 M0.5 0.63 C7.53 0.53, 35.13 0.02, 41.9 -0.19" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(1035.4572025971438 440.6995186385069) rotate(0 20.892970254659303 -0.1444174200888142)"><path d="M22.44 7.42 C26.84 6.15, 31.87 3.12, 41.9 -0.19 M22.44 7.42 C29.63 4.72, 37.85 1.29, 41.9 -0.19" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(1035.4572025971438 440.6995186385069) rotate(0 20.892970254659303 -0.1444174200888142)"><path d="M22.1 -6.86 C26.61 -4.41, 31.72 -3.7, 41.9 -0.19 M22.1 -6.86 C29.35 -4.09, 37.7 -2.03, 41.9 -0.19" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g></g><mask></mask></svg>
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1493.3537606210123 411.5604845778562" width="2986.7075212420245" height="823.1209691557124">
|
|
2
|
+
<!-- svg-source:excalidraw -->
|
|
3
|
+
|
|
4
|
+
<defs>
|
|
5
|
+
<style class="style-fonts">
|
|
6
|
+
@font-face {
|
|
7
|
+
font-family: "Virgil";
|
|
8
|
+
src: url("https://excalidraw.com/Virgil.woff2");
|
|
9
|
+
}
|
|
10
|
+
@font-face {
|
|
11
|
+
font-family: "Cascadia";
|
|
12
|
+
src: url("https://excalidraw.com/Cascadia.woff2");
|
|
13
|
+
}
|
|
14
|
+
@font-face {
|
|
15
|
+
font-family: "Assistant";
|
|
16
|
+
src: url("https://excalidraw.com/Assistant-Regular.woff2");
|
|
17
|
+
}
|
|
18
|
+
</style>
|
|
19
|
+
|
|
20
|
+
</defs>
|
|
21
|
+
<rect x="0" y="0" width="1493.3537606210123" height="411.5604845778562" fill="#ffffff"></rect><g stroke-linecap="round" transform="translate(294.40926691448794 170.81402033509562) rotate(0 129.27623258310302 33.800522136203085)"><path d="M16.9 0 C99.78 1.66, 184.71 1.7, 241.65 0 M16.9 0 C64.33 0.18, 111.71 0.53, 241.65 0 M241.65 0 C254.06 0.57, 258.51 6.13, 258.55 16.9 M241.65 0 C255.18 1.11, 258.99 4.59, 258.55 16.9 M258.55 16.9 C259.09 29.5, 259.61 38.17, 258.55 50.7 M258.55 16.9 C258.26 30.76, 259.11 43.58, 258.55 50.7 M258.55 50.7 C258.05 63.26, 252.9 67.46, 241.65 67.6 M258.55 50.7 C260.36 62.99, 254.55 69.45, 241.65 67.6 M241.65 67.6 C194.67 70.41, 149.05 69.02, 16.9 67.6 M241.65 67.6 C163.96 67.17, 87.42 67.91, 16.9 67.6 M16.9 67.6 C4.92 66.7, 0.69 63.1, 0 50.7 M16.9 67.6 C4.29 69.71, -0.84 63.25, 0 50.7 M0 50.7 C1.8 38.9, 1.05 27.55, 0 16.9 M0 50.7 C0.24 43.88, -0.02 35.02, 0 16.9 M0 16.9 C-0.1 5.63, 4.26 -1.51, 16.9 0 M0 16.9 C-1.98 6.02, 4.78 0.81, 16.9 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(313.0656035625324 192.1145424712986) rotate(0 110.6198959350586 12.5)"><text x="110.6198959350586" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#e03131" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">TallyVotesInputHasher</text></g><g stroke-linecap="round" transform="translate(10 10) rotate(0 110.05757116156974 32.17741655087593)"><path d="M16.09 0 C86.77 -2.57, 160.04 -2.34, 204.03 0 M16.09 0 C57.66 1.05, 98.07 1.01, 204.03 0 M204.03 0 C216.72 0.97, 220.49 4.45, 220.12 16.09 M204.03 0 C215.35 0.13, 219.87 5.95, 220.12 16.09 M220.12 16.09 C222.07 30.23, 219.53 39.25, 220.12 48.27 M220.12 16.09 C219.94 28.63, 220.18 39.81, 220.12 48.27 M220.12 48.27 C221.68 59.88, 216.17 65.96, 204.03 64.35 M220.12 48.27 C217.96 57.95, 216.69 63.58, 204.03 64.35 M204.03 64.35 C135.53 64.67, 65.52 62.74, 16.09 64.35 M204.03 64.35 C161.17 64.13, 119.37 65.15, 16.09 64.35 M16.09 64.35 C4.19 66.18, -0.73 60.1, 0 48.27 M16.09 64.35 C5.73 64.87, 1.13 61.15, 0 48.27 M0 48.27 C-1.57 40.07, 0.35 32.92, 0 16.09 M0 48.27 C-0.02 35.48, -0.66 21.95, 0 16.09 M0 16.09 C-1.72 5.7, 4.62 0.7, 16.09 0 M0 16.09 C0.02 5.38, 4.23 1.1, 16.09 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(54.94763921576896 29.677416550875932) rotate(0 65.10993194580078 12.5)"><text x="65.10993194580078" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">sbCommitment</text></g><g stroke-linecap="round"><g transform="translate(385.0214741061509 97.43477122007062) rotate(0 1.5956212533027951 21.722771252156463)"><path d="M-0.19 -0.45 C0.32 6.8, 2.17 35.88, 2.78 43.22 M0.71 0.51 C1.41 7.85, 3.37 36.79, 3.81 43.81" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(385.0214741061509 97.43477122007062) rotate(0 1.5956212533027951 21.722771252156463)"><path d="M-4.97 23.87 C-3.6 28.21, -0.96 34.59, 3.81 43.81 M-4.97 23.87 C-1.6 30.65, 0.89 36.74, 3.81 43.81" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(385.0214741061509 97.43477122007062) rotate(0 1.5956212533027951 21.722771252156463)"><path d="M9.9 22.89 C7.48 27.46, 6.35 34.08, 3.81 43.81 M9.9 22.89 C8.39 30.02, 5.99 36.42, 3.81 43.81" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g></g><mask></mask><g transform="translate(471.2704292368853 125.75873117477454) rotate(0 31.809967041015625 12.5)"><text x="0" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="start" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">Inputs</text></g><g transform="translate(482.5566653488877 274.70738765460897) rotate(0 40.27995300292969 12.5)"><text x="0" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="start" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">Outputs</text></g><g stroke-linecap="round"><g transform="translate(421.57579823026026 273.4370338845199) rotate(0 0.2229014099474398 20.511057519056408)"><path d="M0.1 -0.25 C0.11 6.55, 0.54 34.15, 0.59 41.05 M-0.51 0.81 C-0.6 7.68, 0.15 34.93, 0.23 41.77" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(421.57579823026026 273.4370338845199) rotate(0 0.2229014099474398 20.511057519056408)"><path d="M-7.18 22.64 C-4.63 30.51, -1.17 37.77, 0.23 41.77 M-7.18 22.64 C-4.88 29.3, -1.79 34.9, 0.23 41.77" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(421.57579823026026 273.4370338845199) rotate(0 0.2229014099474398 20.511057519056408)"><path d="M6.85 22.35 C3.81 30.35, 1.68 37.72, 0.23 41.77 M6.85 22.35 C4.58 29.14, 3.1 34.83, 0.23 41.77" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g></g><mask></mask><g stroke-linecap="round" transform="translate(325.01614578217686 337.2056514761043) rotate(0 110.05757116156974 32.17741655087593)"><path d="M16.09 0 C76.14 -0.7, 136.48 1.09, 204.03 0 M16.09 0 C83.23 -2.05, 147.81 -0.98, 204.03 0 M204.03 0 C215.21 0.71, 219.62 6.65, 220.12 16.09 M204.03 0 C214.73 -0.16, 221.92 6.39, 220.12 16.09 M220.12 16.09 C219.47 29.71, 219.7 41.33, 220.12 48.27 M220.12 16.09 C220.35 26.26, 219.38 35.48, 220.12 48.27 M220.12 48.27 C220 59.24, 214.04 63.45, 204.03 64.35 M220.12 48.27 C220.91 60.3, 213.4 66.46, 204.03 64.35 M204.03 64.35 C154.96 65.64, 106.88 63.54, 16.09 64.35 M204.03 64.35 C136.89 63.32, 70.28 64.02, 16.09 64.35 M16.09 64.35 C5.2 64.15, -0.1 58.98, 0 48.27 M16.09 64.35 C3.78 62.62, -1.98 59.38, 0 48.27 M0 48.27 C-0.1 38.82, 0.84 30, 0 16.09 M0 48.27 C-0.5 39.8, -0.3 29.42, 0 16.09 M0 16.09 C1.9 6.97, 3.57 -1.71, 16.09 0 M0 16.09 C0.88 5.93, 7.43 -0.7, 16.09 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(384.403772180563 356.88306802698025) rotate(0 50.669944763183594 12.5)"><text x="50.669944763183594" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#2f9e44" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">numSignups</text></g><g stroke-linecap="round" transform="translate(255.71407860060526 14.325375601543328) rotate(0 110.05757116156974 32.17741655087593)"><path d="M16.09 0 C60.38 1.04, 107.75 2.08, 204.03 0 M16.09 0 C90.89 -1.11, 164.19 0.08, 204.03 0 M204.03 0 C214.75 0.63, 221.02 4.92, 220.12 16.09 M204.03 0 C215.19 0.85, 219.98 5.94, 220.12 16.09 M220.12 16.09 C221.24 28.95, 220.01 41.79, 220.12 48.27 M220.12 16.09 C220.46 27.98, 219.37 38.96, 220.12 48.27 M220.12 48.27 C219.34 57.27, 215.32 65.1, 204.03 64.35 M220.12 48.27 C222.29 60.17, 215.63 62.52, 204.03 64.35 M204.03 64.35 C159.11 65.96, 114.63 65.98, 16.09 64.35 M204.03 64.35 C159.74 63.55, 114.79 64.74, 16.09 64.35 M16.09 64.35 C6.82 62.55, 1.24 58.97, 0 48.27 M16.09 64.35 C5.58 62.49, -1.75 59.21, 0 48.27 M0 48.27 C0.4 36.43, 0.19 24.87, 0 16.09 M0 48.27 C0.95 41.34, -0.63 33.52, 0 16.09 M0 16.09 C1.77 5.99, 7.19 -2, 16.09 0 M0 16.09 C-1.3 3.32, 5.45 -2.14, 16.09 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(261.74175016500703 21.50279215241926) rotate(0 104.02989959716797 25)"><text x="104.02989959716797" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">currentTallyCommitme</text><text x="104.02989959716797" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">nt</text></g><g stroke-linecap="round" transform="translate(508.00472555008196 14.286553692389589) rotate(0 110.05757116156974 32.17741655087593)"><path d="M16.09 0 C64.81 0.95, 111.26 -2.57, 204.03 0 M16.09 0 C73.5 1.31, 128.51 1.15, 204.03 0 M204.03 0 C214.84 1.93, 218.78 3.62, 220.12 16.09 M204.03 0 C212.75 -1.93, 221.12 7.46, 220.12 16.09 M220.12 16.09 C221.85 24.3, 220.23 34.73, 220.12 48.27 M220.12 16.09 C220.32 21.85, 219.73 29.09, 220.12 48.27 M220.12 48.27 C220.93 58.02, 214.78 64.23, 204.03 64.35 M220.12 48.27 C221.77 59.25, 213.29 64.55, 204.03 64.35 M204.03 64.35 C163.08 64.06, 123.4 64.58, 16.09 64.35 M204.03 64.35 C161.14 66.29, 116.43 65.85, 16.09 64.35 M16.09 64.35 C7 66.02, -1.17 57.12, 0 48.27 M16.09 64.35 C3.48 63.1, -2.21 57.91, 0 48.27 M0 48.27 C0.04 37.17, 0.57 29.68, 0 16.09 M0 48.27 C-0.52 39.34, -0.26 28.68, 0 16.09 M0 16.09 C1.65 5.62, 6.43 1.87, 16.09 0 M0 16.09 C0.88 5.21, 6.72 0.89, 16.09 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(522.572382771222 33.96397024326552) rotate(0 95.48991394042969 12.5)"><text x="95.48991394042969" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">newTallyCommitment</text></g><g stroke-linecap="round" transform="translate(752.5762828962881 14.985348057145302) rotate(0 110.05757116156974 32.17741655087593)"><path d="M16.09 0 C81.91 -0.55, 151.62 -0.51, 204.03 0 M16.09 0 C72.92 0.72, 129.25 2.01, 204.03 0 M204.03 0 C215.9 0.44, 219.38 3.37, 220.12 16.09 M204.03 0 C216.94 -0.29, 218.4 3.6, 220.12 16.09 M220.12 16.09 C219.28 22.8, 220.99 31.71, 220.12 48.27 M220.12 16.09 C219.79 23.93, 220.58 32.2, 220.12 48.27 M220.12 48.27 C219.48 59.2, 214.69 65.59, 204.03 64.35 M220.12 48.27 C219.86 56.88, 216.45 66.36, 204.03 64.35 M204.03 64.35 C159.53 62.83, 117.88 65.24, 16.09 64.35 M204.03 64.35 C159.91 65.08, 116.09 65.35, 16.09 64.35 M16.09 64.35 C7.08 65.44, 0.53 59.08, 0 48.27 M16.09 64.35 C3.23 63.14, 0.86 57.74, 0 48.27 M0 48.27 C-0.9 39.28, -1.03 31.38, 0 16.09 M0 48.27 C-0.01 39.95, 0.8 30.47, 0 16.09 M0 16.09 C-0.12 5.59, 6.91 -0.8, 16.09 0 M0 16.09 C-0.95 3.52, 4.17 0.19, 16.09 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(810.0838967824673 34.662764608021234) rotate(0 52.549957275390625 12.5)"><text x="52.549957275390625" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">packedVals</text></g><g stroke-linecap="round" transform="translate(563.3269904098835 342.18670710146375) rotate(0 110.05757116156974 17.5)"><path d="M8.75 0 C79.99 -0.19, 151.85 -1.64, 211.37 0 M8.75 0 C52.2 -2.57, 93.28 -1.6, 211.37 0 M211.37 0 C217.56 0.58, 218.73 3.98, 220.12 8.75 M211.37 0 C217.23 -1.93, 218.68 1.6, 220.12 8.75 M220.12 8.75 C221.37 11.44, 221.23 15.44, 220.12 26.25 M220.12 8.75 C220.86 13.96, 221 19.2, 220.12 26.25 M220.12 26.25 C221.26 32.53, 216.86 36.54, 211.37 35 M220.12 26.25 C218.47 32.21, 219.18 36.22, 211.37 35 M211.37 35 C153.56 35.9, 94.85 33.87, 8.75 35 M211.37 35 C134.26 36.56, 56.11 37.63, 8.75 35 M8.75 35 C2.22 35.46, -1.88 33.66, 0 26.25 M8.75 35 C2.37 34.93, 1.76 33.66, 0 26.25 M0 26.25 C1.17 20.01, -0.69 14.38, 0 8.75 M0 26.25 C-0.1 21.56, -0.5 17.24, 0 8.75 M0 8.75 C1.52 3.41, 4.47 1.49, 8.75 0 M0 8.75 C-2.09 3.72, 0.64 1.72, 8.75 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(609.4946155875665 347.18670710146375) rotate(0 63.88994598388672 12.5)"><text x="63.88994598388672" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#2f9e44" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">batch number</text></g><g stroke-linecap="round" transform="translate(92.05212273505936 342.2376202745236) rotate(0 110.05757116156974 17.5)"><path d="M8.75 0 C87.8 1.47, 163.73 0.03, 211.37 0 M8.75 0 C80.33 1.32, 150.99 1.31, 211.37 0 M211.37 0 C217.29 1.89, 220.21 2.84, 220.12 8.75 M211.37 0 C216.45 0.06, 218.98 2.15, 220.12 8.75 M220.12 8.75 C220.91 15.34, 218.88 23.68, 220.12 26.25 M220.12 8.75 C219.53 13.76, 220.44 19.44, 220.12 26.25 M220.12 26.25 C221.21 32.93, 217.95 36.33, 211.37 35 M220.12 26.25 C217.92 33.43, 218.98 36.82, 211.37 35 M211.37 35 C143.51 34.44, 74.02 35, 8.75 35 M211.37 35 C131.56 34.14, 53.58 33.46, 8.75 35 M8.75 35 C1.81 36.98, 0.7 33.6, 0 26.25 M8.75 35 C2.1 34.43, 1.06 31.74, 0 26.25 M0 26.25 C-1.28 20.9, 0.87 17.15, 0 8.75 M0 26.25 C0.47 22.37, 0.55 16.2, 0 8.75 M0 8.75 C0.54 4.14, 4.21 0.3, 8.75 0 M0 8.75 C0.91 2.34, 2.54 1.86, 8.75 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(180.1297134278791 347.2376202745236) rotate(0 21.97998046875 12.5)"><text x="21.97998046875" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#2f9e44" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">hash</text></g><g stroke-linecap="round"><g transform="translate(606.8514310658963 201.4631287988518) rotate(0 108.38376029738589 0.46191284466056004)"><path d="M-0.42 0.96 C35.67 1.31, 181.12 1.18, 217.48 1.01 M1.56 0.41 C37.47 1.07, 180.92 2.54, 216.9 2.59" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(606.8514310658963 201.4631287988518) rotate(0 108.38376029738589 0.46191284466056004)"><path d="M193.35 10.99 C203.92 9.08, 211.37 6.33, 216.9 2.59 M193.35 10.99 C197.49 9.23, 203 6.78, 216.9 2.59" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(606.8514310658963 201.4631287988518) rotate(0 108.38376029738589 0.46191284466056004)"><path d="M193.47 -6.12 C203.83 -1.56, 211.24 2.15, 216.9 2.59 M193.47 -6.12 C197.72 -4.2, 203.2 -2.98, 216.9 2.59" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g></g><mask></mask><g transform="translate(647.8887406336343 152.29703720881002) rotate(0 49.669944763183594 12.5)"><text x="0" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="start" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">Processing</text></g><g stroke-linecap="round" transform="translate(850.3843537270727 131.33946292169503) rotate(0 121.49070339472077 34.20563317567928)"><path d="M17.1 0 C77.13 -0.25, 140.02 1.38, 225.88 0 M17.1 0 C84.36 0.77, 152.69 1.7, 225.88 0 M225.88 0 C235.37 1.26, 243.04 5.88, 242.98 17.1 M225.88 0 C236.79 -1.92, 241.9 7.18, 242.98 17.1 M242.98 17.1 C241.58 25.82, 241.99 32.3, 242.98 51.31 M242.98 17.1 C242.69 24.04, 242.3 31.26, 242.98 51.31 M242.98 51.31 C243.13 63.41, 238.81 68.87, 225.88 68.41 M242.98 51.31 C242.93 61.45, 235.7 68.68, 225.88 68.41 M225.88 68.41 C181.45 69.21, 131.82 67.12, 17.1 68.41 M225.88 68.41 C181.35 67.73, 136.7 68.68, 17.1 68.41 M17.1 68.41 C4.73 69.09, 0.66 62.01, 0 51.31 M17.1 68.41 C5.73 69.94, -0.42 62.82, 0 51.31 M0 51.31 C-1.27 38.99, -0.66 25.94, 0 17.1 M0 51.31 C0.77 41.45, 0.32 32.18, 0 17.1 M0 17.1 C-0.76 6.63, 7.48 -1.24, 17.1 0 M0 17.1 C-2.19 4.4, 4.07 0.09, 17.1 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(902.0650977101724 140.54509609737443) rotate(0 69.8099594116211 25)"><text x="69.8099594116211" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">1. Unpack the </text><text x="69.8099594116211" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">packedVals</text></g><g stroke-linecap="round" transform="translate(1197.2614826843608 117.14330183429206) rotate(0 143.04613896832575 47.61936899927218)"><path d="M23.81 0 C82.07 0.17, 139.61 0.19, 262.28 0 M23.81 0 C86.83 2.28, 148.09 1.35, 262.28 0 M262.28 0 C278.35 0.92, 286.89 9.63, 286.09 23.81 M262.28 0 C277.07 -1.96, 287.1 7.63, 286.09 23.81 M286.09 23.81 C288.06 35.11, 284.76 47.94, 286.09 71.43 M286.09 23.81 C286.32 34.75, 285.25 43.73, 286.09 71.43 M286.09 71.43 C284.38 86.09, 278.46 96.41, 262.28 95.24 M286.09 71.43 C287.89 89.29, 276.19 94.71, 262.28 95.24 M262.28 95.24 C201.69 96.91, 139.12 95.9, 23.81 95.24 M262.28 95.24 C174.34 93.83, 85.75 94.52, 23.81 95.24 M23.81 95.24 C7.24 95.21, -1.65 88.16, 0 71.43 M23.81 95.24 C6.33 94.52, -0.99 88.59, 0 71.43 M0 71.43 C0.6 58.43, -1.35 48.64, 0 23.81 M0 71.43 C-0.3 59.99, -0.77 48.81, 0 23.81 M0 23.81 C-0.42 7.52, 8.11 -1.84, 23.81 0 M0 23.81 C0.51 9.93, 9.02 1, 23.81 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(1211.9477278538584 139.76267083356424) rotate(0 128.35989379882812 25)"><text x="128.35989379882812" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">This is the batch number </text><text x="128.35989379882812" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">and the number of signups</text></g><g stroke-linecap="round"><g transform="translate(1130.2937187664036 169.30603841698075) rotate(0 15.46634491356258 -0.1900694001952843)"><path d="M-0.07 0.17 C5.19 0.05, 26.11 -0.5, 31.19 -0.62 M-0.77 -0.22 C4.47 -0.28, 25.52 -0.07, 30.9 -0.05" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(1130.2937187664036 169.30603841698075) rotate(0 15.46634491356258 -0.1900694001952843)"><path d="M16.32 5.14 C19.95 4.31, 22.76 2.04, 30.9 -0.05 M16.32 5.14 C19.85 3.96, 24.36 2.39, 30.9 -0.05" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(1130.2937187664036 169.30603841698075) rotate(0 15.46634491356258 -0.1900694001952843)"><path d="M16.4 -5.44 C20.02 -3.81, 22.81 -3.62, 30.9 -0.05 M16.4 -5.44 C19.92 -3.79, 24.42 -2.51, 30.9 -0.05" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g></g><mask></mask><g stroke-linecap="round" transform="translate(830.5441914983394 236.61006188457782) rotate(0 134.74171867676966 52.76127373882025)"><path d="M26.38 0 C98.96 -1.38, 172.72 1.64, 243.1 0 M26.38 0 C100.19 -0.22, 173.74 -0.44, 243.1 0 M243.1 0 C262.35 -1.18, 268.6 10.13, 269.48 26.38 M243.1 0 C259.91 -0.37, 271.34 6.71, 269.48 26.38 M269.48 26.38 C269.58 42.95, 268.91 63.47, 269.48 79.14 M269.48 26.38 C269.42 37.41, 268.71 50.34, 269.48 79.14 M269.48 79.14 C268.44 97.52, 260.15 104.87, 243.1 105.52 M269.48 79.14 C268.33 97.18, 261.41 106.25, 243.1 105.52 M243.1 105.52 C178.56 105.81, 112.06 105.31, 26.38 105.52 M243.1 105.52 C169.21 105.87, 95.06 105.07, 26.38 105.52 M26.38 105.52 C7.44 106.82, 1.92 95.36, 0 79.14 M26.38 105.52 C8.2 103.39, -1.67 96.16, 0 79.14 M0 79.14 C0.65 66.23, 1.58 55.05, 0 26.38 M0 79.14 C-0.08 67.19, -0.23 54.14, 0 26.38 M0 26.38 C1.96 7.45, 7.4 -0.07, 26.38 0 M0 26.38 C-1.59 6.85, 8.55 1.11, 26.38 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(837.2260041692497 251.87133562339818) rotate(0 128.05990600585938 37.5)"><text x="128.05990600585938" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">2. Use a sha256 hasher </text><text x="128.05990600585938" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">component to hash the </text><text x="128.05990600585938" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">values</text></g><g stroke-linecap="round" transform="translate(1189.182622877517 247.09786764752926) rotate(0 136.7999829552739 76.49551632667442)"><path d="M32 0 C100.02 -0.45, 167.49 0.63, 241.6 0 M32 0 C99.24 -0.83, 167.12 -0.22, 241.6 0 M241.6 0 C263.61 1.64, 271.62 11.64, 273.6 32 M241.6 0 C261.36 -1.37, 273.5 12.2, 273.6 32 M273.6 32 C273.93 62.81, 275.15 95.57, 273.6 120.99 M273.6 32 C272.65 63.76, 271.88 95.49, 273.6 120.99 M273.6 120.99 C275.25 144.08, 262.53 153.51, 241.6 152.99 M273.6 120.99 C275.19 142.47, 262.52 153.68, 241.6 152.99 M241.6 152.99 C175.68 150.67, 105.98 151.96, 32 152.99 M241.6 152.99 C184.61 151.46, 128.4 151.79, 32 152.99 M32 152.99 C11.22 151.47, -0.33 143.54, 0 120.99 M32 152.99 C9.9 150.69, 2.2 141.46, 0 120.99 M0 120.99 C-2.13 93.05, 0.12 65.07, 0 32 M0 120.99 C0 94.63, -0.24 68.31, 0 32 M0 32 C-0.85 10.48, 12.61 -0.57, 32 0 M0 32 C-1.16 12.23, 9.31 1.09, 32 0" stroke="#1971c2" stroke-width="1" fill="none"></path></g><g transform="translate(1204.062714475369 273.59338397420356) rotate(0 121.91989135742188 50)"><text x="121.91989135742188" y="0" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">inputs: packedValues, </text><text x="121.91989135742188" y="25" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">sbCommitment, </text><text x="121.91989135742188" y="50" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">currentTallyCommitment, </text><text x="121.91989135742188" y="75" font-family="Virgil, Segoe UI Emoji" font-size="20px" fill="#1971c2" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="text-before-edge">newTallyCommitment</text></g><g stroke-linecap="round"><g transform="translate(1128.8686996605634 281.27010371267875) rotate(0 17.254973246360578 0.19478672632124017)"><path d="M-0.45 0.03 C5.32 0.19, 28.73 0.7, 34.64 0.72 M0.33 -0.42 C6.03 -0.41, 28.51 -0.25, 34.28 -0.08" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(1128.8686996605634 281.27010371267875) rotate(0 17.254973246360578 0.19478672632124017)"><path d="M17.97 5.55 C23.08 4.08, 28.6 2.95, 34.28 -0.08 M17.97 5.55 C22.55 4.13, 25.96 2.96, 34.28 -0.08" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g><g transform="translate(1128.8686996605634 281.27010371267875) rotate(0 17.254973246360578 0.19478672632124017)"><path d="M18.17 -6.25 C23.2 -4.07, 28.65 -1.55, 34.28 -0.08 M18.17 -6.25 C22.74 -4.63, 26.09 -2.76, 34.28 -0.08" stroke="#1e1e1e" stroke-width="1" fill="none"></path></g></g><mask></mask></svg>
|