From 7e60446268dfb1dcaf036e06e82dfc3dd7ebb2e4 Mon Sep 17 00:00:00 2001 From: Vivian Plasencia Date: Tue, 2 Sep 2025 15:45:47 +0200 Subject: [PATCH 1/3] docs: remove trusted setup from docs and website (#1039) * docs(docs): remove trusted setup announcement from docs * docs(website): remove trusted setup announcement from website --- apps/docs/docusaurus.config.ts | 2 +- .../version-V4/trusted-setup.md | 50 ------------------- apps/website/src/app/layout.tsx | 7 ++- apps/website/src/data/events.json | 6 --- 4 files changed, 4 insertions(+), 61 deletions(-) delete mode 100644 apps/docs/versioned_docs/version-V4/trusted-setup.md diff --git a/apps/docs/docusaurus.config.ts b/apps/docs/docusaurus.config.ts index b9be89bff..36cdbe963 100644 --- a/apps/docs/docusaurus.config.ts +++ b/apps/docs/docusaurus.config.ts @@ -67,7 +67,7 @@ const config: Config = { announcementBar: { id: "semaphore-v4-beta", content: - 'New Semaphore V4 Trusted Setup Ceremony is open for contributions until August 20!', + 'Semaphore V4 is out 🎉 Try it out and let us know if you have any feedback on Telegram or Github!', backgroundColor: "#dde6fc", textColor: "#000000" }, diff --git a/apps/docs/versioned_docs/version-V4/trusted-setup.md b/apps/docs/versioned_docs/version-V4/trusted-setup.md deleted file mode 100644 index 3a27b0c93..000000000 --- a/apps/docs/versioned_docs/version-V4/trusted-setup.md +++ /dev/null @@ -1,50 +0,0 @@ ---- -sidebar_position: 6 ---- - -# Trusted Setup - -We are excited to announce the upcoming Multi-Party Computation (MPC) Phase 2 Trusted Setup ceremony for the Semaphore V4 circuit, following a [bug fix in the BinaryMerkleRoot circuit](https://pse.dev/blog/under-constrained-bug-in-binary-merkle-root-circuit-fixed-in-v200) in ZK-Kit. This is crucial for establishing a robust security foundation for the cryptographic protocol. - -The ceremony will take place from **July 23** to **August 20**. If all goes to plan, finalization should take place on **August 22** with the announcement of the final beacon on **August 21**. - -## Securing Semaphore V4 - -To contribute to this ceremony, you will just need your browser! - -1. Visit [ceremony.pse.dev](https://ceremony.pse.dev/projects/Semaphore%20Binary%20Merkle%20Root%20Fix). -2. Login and associate your **Github** account. -3. Hit the `contribute` button and wait for your turn. - -Please note: You will find your contribution certificate on your GitHub gists - and, if all goes wrong or you feel lost, there are instructions on site or post a message on [Semaphore Telegram](https://semaphore.pse.dev/telegram) chat or [PSE discord](https://discord.com/invite/sF5CT5rzrR). - -## What You Need to Know About the Ceremony - -### Your Role - -Many zero-knowledge proof systems, including those based on the Groth16 scheme, require this layer of randomness, often referred to as "toxic waste” which must remain unknown to anyone to maintain the integrity of the zero-knowledge proof system. Trusted setups rely on a 1 of N honest participant assumption. As long as just one participant actually discards their “toxic waste”, the proof system will be secure. You can be that one participant by providing your unique entropy with your contribution, making the ceremony unpredictable and unbiased, safeguarding the entire process against potential vulnerabilities. - -### Why It Matters - -Trusted setups are crucial as they generate a set of parameters necessary to initiate SNARK-based systems. Through a series of computations performed by various participants. This sequence involves downloading previous contributions, adding generated randomness, and uploading the results of your contribution. These contributions are then integrated into the final artifacts crucial for proof generation/verification. - -### Semaphore Circuit - -The [Semaphore circuit](https://github.com/semaphore-protocol/semaphore/blob/main/packages/circuits/src/semaphore.circom) centered around the creation of the _Semaphore identity_ and _identity commitment_, includes verification processes, and facilitates the generation of the _nullifier_. We are going to support `MAX_DEPTH` from 1 to 32 - therefore you will have to contribute to 32 variants of the same circuit. Since the constraints will range from 2k to less than 10k with very small artifacts size (< 6mb x contribution), the waiting and contribution time shouldn't be much! - -### Transparency and Fairness - -We are committed to transparency on ceremony setup, execution, finalization, and later verification. Our primary goal is to **engage as many contributors as possible** to ensure the circuit is **secure** and **production-ready**. To this end, the ceremony is designed to _maximize contributor inclusion_, monitor & troubleshoot whenever is needed, _lower the entry barriers_, _making contributiong as effortless as possible_. A key step towards achieving these goals is running the ceremony w/ [p0tion](https://github.com/privacy-scaling-explorations/p0tion): an in-house developed, open-source, battle-tested tool that is fully equipped to meet our needs. - -### Ceremony Settings - -To protect the ceremony from sybils, in order to contribute you must have a GitHub account such that you have: 1 public repository, at least 1 follower, following at least 5 other accounts and, your account is at least 1 month old. While to protect from fake contributors or people hanging due to connection/machine resources, we are going to set a 10 minutes time-window on contributions (+ 1 hour verification) - after this amount of time, you will be kicked out and will have to wait **10 minutes** before you can contribute again. - -## Troubleshooting - -- If you have been idle longer than expected, it may be that the current contributor has been blocked for some reason. Do not worry, the maximum wait in this case is one hour, after which you will be able to continue contributing. - -### Learn more about Trusted Setups - -- [How Do Trusted Setups Work? - Vitalik](https://vitalik.eth.limo/general/2022/03/14/trustedsetup.html) -- [p0tion FAQs](https://p0tion.super.site/faqs#block-cebca23ebb514c2ea096ad44d4833356) diff --git a/apps/website/src/app/layout.tsx b/apps/website/src/app/layout.tsx index 9dfce951d..c6bede5a4 100644 --- a/apps/website/src/app/layout.tsx +++ b/apps/website/src/app/layout.tsx @@ -32,20 +32,19 @@ export default function RootLayout({ children }: { children: React.ReactNode }) - Semaphore V4 - Trusted Setup Ceremony + Semaphore V4 {" "} - is open for contributions until August 20! + has been released 🚀 diff --git a/apps/website/src/data/events.json b/apps/website/src/data/events.json index 04ca47603..5698600bf 100644 --- a/apps/website/src/data/events.json +++ b/apps/website/src/data/events.json @@ -11,12 +11,6 @@ "description": "Semaphore team will deliver an in-person talk.", "link": "https://zuberlin.city/" }, - { - "name": "Trusted Setup Ceremony", - "date": "Jul 23 - Aug 6, 2025", - "description": "The Semaphore team will perform the Phase 2 MPC Trusted Setup Ceremony to secure V4 circuit variants from 1 to 32 tree depths, following a bug fix in the BinaryMerkleRoot circuit in ZK-Kit.", - "link": "https://docs.semaphore.pse.dev/trusted-setup" - }, { "name": "Devconnect", "date": "Nov 17-22, 2025", From 7ccb14d3623a1420cded84e2b2402a784334dde8 Mon Sep 17 00:00:00 2001 From: Vivian Plasencia Date: Mon, 8 Sep 2025 14:13:44 +0200 Subject: [PATCH 2/3] feat: deploy contracts (#1041) --- apps/subgraph/README.md | 2 +- packages/data/src/getURL.ts | 2 +- .../src/networks/deployed-contracts.json | 130 +++++++++--------- packages/utils/src/semaphore-interface.json | 4 +- 4 files changed, 69 insertions(+), 69 deletions(-) diff --git a/apps/subgraph/README.md b/apps/subgraph/README.md index a67f2ee96..19fbf91d9 100644 --- a/apps/subgraph/README.md +++ b/apps/subgraph/README.md @@ -42,7 +42,7 @@ ## Networks -You can access any subgraph supported by Semaphore with the following URL: `https://api.studio.thegraph.com/query/14377/semaphore-/v4.2.0`. +You can access any subgraph supported by Semaphore with the following URL: `https://api.studio.thegraph.com/query/14377/semaphore-/v4.5.0`. Supported networks: diff --git a/packages/data/src/getURL.ts b/packages/data/src/getURL.ts index 5737b55da..35eb0df97 100644 --- a/packages/data/src/getURL.ts +++ b/packages/data/src/getURL.ts @@ -12,5 +12,5 @@ export default function getURL(supportedNetwork: SupportedNetwork): string { throw new TypeError(`Network '${supportedNetwork}' is not supported`) } - return `https://api.studio.thegraph.com/query/14377/semaphore-${supportedNetwork}/v4.3.0` + return `https://api.studio.thegraph.com/query/14377/semaphore-${supportedNetwork}/v4.5.0` } diff --git a/packages/utils/src/networks/deployed-contracts.json b/packages/utils/src/networks/deployed-contracts.json index a511b962a..1aa47b819 100644 --- a/packages/utils/src/networks/deployed-contracts.json +++ b/packages/utils/src/networks/deployed-contracts.json @@ -4,18 +4,18 @@ "contracts": [ { "name": "SemaphoreVerifier", - "address": "0x6C42599435B82121794D835263C846384869502d", - "startBlock": 8263690 + "address": "0x4DeC9E3784EcC1eE002001BfE91deEf4A48931f8", + "startBlock": 9118042 }, { "name": "PoseidonT3", "address": "0xB43122Ecb241DD50062641f089876679fd06599a", - "startBlock": 8263690 + "startBlock": 9118042 }, { "name": "Semaphore", - "address": "0x697c80d1F2654e88d52B16154929EB976568DB04", - "startBlock": 8263690 + "address": "0x8A1fd199516489B0Fb7153EB5f075cDAC83c693D", + "startBlock": 9118042 } ] }, @@ -24,18 +24,18 @@ "contracts": [ { "name": "SemaphoreVerifier", - "address": "0x6C42599435B82121794D835263C846384869502d", - "startBlock": 22424592 + "address": "0x4DeC9E3784EcC1eE002001BfE91deEf4A48931f8", + "startBlock": 23311418 }, { "name": "PoseidonT3", "address": "0xB43122Ecb241DD50062641f089876679fd06599a", - "startBlock": 22424592 + "startBlock": 23311418 }, { "name": "Semaphore", - "address": "0x697c80d1F2654e88d52B16154929EB976568DB04", - "startBlock": 22424592 + "address": "0x8A1fd199516489B0Fb7153EB5f075cDAC83c693D", + "startBlock": 23311418 } ] }, @@ -44,18 +44,18 @@ "contracts": [ { "name": "SemaphoreVerifier", - "address": "0x6C42599435B82121794D835263C846384869502d", - "startBlock": 149903019 + "address": "0x4DeC9E3784EcC1eE002001BfE91deEf4A48931f8", + "startBlock": 190173122 }, { "name": "PoseidonT3", "address": "0xB43122Ecb241DD50062641f089876679fd06599a", - "startBlock": 149903019 + "startBlock": 190173122 }, { "name": "Semaphore", - "address": "0x697c80d1F2654e88d52B16154929EB976568DB04", - "startBlock": 149903019 + "address": "0x8A1fd199516489B0Fb7153EB5f075cDAC83c693D", + "startBlock": 190173122 } ] }, @@ -64,18 +64,18 @@ "contracts": [ { "name": "SemaphoreVerifier", - "address": "0x6C42599435B82121794D835263C846384869502d", - "startBlock": 27341051 + "address": "0x4DeC9E3784EcC1eE002001BfE91deEf4A48931f8", + "startBlock": 32508911 }, { "name": "PoseidonT3", "address": "0xB43122Ecb241DD50062641f089876679fd06599a", - "startBlock": 27341051 + "startBlock": 32508911 }, { "name": "Semaphore", - "address": "0x697c80d1F2654e88d52B16154929EB976568DB04", - "startBlock": 27341051 + "address": "0x8A1fd199516489B0Fb7153EB5f075cDAC83c693D", + "startBlock": 32508911 } ] }, @@ -84,18 +84,18 @@ "contracts": [ { "name": "SemaphoreVerifier", - "address": "0x6C42599435B82121794D835263C846384869502d", - "startBlock": 21308099 + "address": "0x4DeC9E3784EcC1eE002001BfE91deEf4A48931f8", + "startBlock": 25915415 }, { "name": "PoseidonT3", "address": "0xB43122Ecb241DD50062641f089876679fd06599a", - "startBlock": 21308099 + "startBlock": 25915415 }, { "name": "Semaphore", - "address": "0x697c80d1F2654e88d52B16154929EB976568DB04", - "startBlock": 21308099 + "address": "0x8A1fd199516489B0Fb7153EB5f075cDAC83c693D", + "startBlock": 25915415 } ] }, @@ -104,18 +104,18 @@ "contracts": [ { "name": "SemaphoreVerifier", - "address": "0x6C42599435B82121794D835263C846384869502d", - "startBlock": 333645515 + "address": "0x4DeC9E3784EcC1eE002001BfE91deEf4A48931f8", + "startBlock": 376612967 }, { "name": "PoseidonT3", "address": "0xB43122Ecb241DD50062641f089876679fd06599a", - "startBlock": 333645515 + "startBlock": 376612967 }, { "name": "Semaphore", - "address": "0x697c80d1F2654e88d52B16154929EB976568DB04", - "startBlock": 333645515 + "address": "0x8A1fd199516489B0Fb7153EB5f075cDAC83c693D", + "startBlock": 376612967 } ] }, @@ -124,18 +124,18 @@ "contracts": [ { "name": "SemaphoreVerifier", - "address": "0x6C42599435B82121794D835263C846384869502d", - "startBlock": 71158898 + "address": "0x4DeC9E3784EcC1eE002001BfE91deEf4A48931f8", + "startBlock": 76162950 }, { "name": "PoseidonT3", "address": "0xB43122Ecb241DD50062641f089876679fd06599a", - "startBlock": 71158898 + "startBlock": 76162950 }, { "name": "Semaphore", - "address": "0x697c80d1F2654e88d52B16154929EB976568DB04", - "startBlock": 71158898 + "address": "0x8A1fd199516489B0Fb7153EB5f075cDAC83c693D", + "startBlock": 76162950 } ] }, @@ -144,18 +144,18 @@ "contracts": [ { "name": "SemaphoreVerifier", - "address": "0x6C42599435B82121794D835263C846384869502d", - "startBlock": 135443119 + "address": "0x4DeC9E3784EcC1eE002001BfE91deEf4A48931f8", + "startBlock": 140821423 }, { "name": "PoseidonT3", "address": "0xB43122Ecb241DD50062641f089876679fd06599a", - "startBlock": 135443119 + "startBlock": 140821423 }, { "name": "Semaphore", - "address": "0x697c80d1F2654e88d52B16154929EB976568DB04", - "startBlock": 135443119 + "address": "0x8A1fd199516489B0Fb7153EB5f075cDAC83c693D", + "startBlock": 140821423 } ] }, @@ -164,18 +164,18 @@ "contracts": [ { "name": "SemaphoreVerifier", - "address": "0x6C42599435B82121794D835263C846384869502d", - "startBlock": 25358716 + "address": "0x4DeC9E3784EcC1eE002001BfE91deEf4A48931f8", + "startBlock": 30526193 }, { "name": "PoseidonT3", "address": "0xB43122Ecb241DD50062641f089876679fd06599a", - "startBlock": 25358716 + "startBlock": 30526193 }, { "name": "Semaphore", - "address": "0x697c80d1F2654e88d52B16154929EB976568DB04", - "startBlock": 25358716 + "address": "0x8A1fd199516489B0Fb7153EB5f075cDAC83c693D", + "startBlock": 30526193 } ] }, @@ -184,18 +184,18 @@ "contracts": [ { "name": "SemaphoreVerifier", - "address": "0x6C42599435B82121794D835263C846384869502d", - "startBlock": 12757656 + "address": "0x4DeC9E3784EcC1eE002001BfE91deEf4A48931f8", + "startBlock": 17778088 }, { "name": "PoseidonT3", "address": "0xB43122Ecb241DD50062641f089876679fd06599a", - "startBlock": 12757656 + "startBlock": 17778088 }, { "name": "Semaphore", - "address": "0x697c80d1F2654e88d52B16154929EB976568DB04", - "startBlock": 12757656 + "address": "0x8A1fd199516489B0Fb7153EB5f075cDAC83c693D", + "startBlock": 17778088 } ] }, @@ -204,18 +204,18 @@ "contracts": [ { "name": "SemaphoreVerifier", - "address": "0x6C42599435B82121794D835263C846384869502d", - "startBlock": 29848242 + "address": "0x4DeC9E3784EcC1eE002001BfE91deEf4A48931f8", + "startBlock": 35226469 }, { "name": "PoseidonT3", "address": "0xB43122Ecb241DD50062641f089876679fd06599a", - "startBlock": 29848242 + "startBlock": 35226469 }, { "name": "Semaphore", - "address": "0x697c80d1F2654e88d52B16154929EB976568DB04", - "startBlock": 29848242 + "address": "0x8A1fd199516489B0Fb7153EB5f075cDAC83c693D", + "startBlock": 35226469 } ] }, @@ -224,18 +224,18 @@ "contracts": [ { "name": "SemaphoreVerifier", - "address": "0x6C42599435B82121794D835263C846384869502d", - "startBlock": 18707811 + "address": "0x4DeC9E3784EcC1eE002001BfE91deEf4A48931f8", + "startBlock": 23030579 }, { "name": "PoseidonT3", "address": "0xB43122Ecb241DD50062641f089876679fd06599a", - "startBlock": 18707811 + "startBlock": 23030579 }, { "name": "Semaphore", - "address": "0x697c80d1F2654e88d52B16154929EB976568DB04", - "startBlock": 18707811 + "address": "0x8A1fd199516489B0Fb7153EB5f075cDAC83c693D", + "startBlock": 23030579 } ] }, @@ -244,18 +244,18 @@ "contracts": [ { "name": "SemaphoreVerifier", - "address": "0x6C42599435B82121794D835263C846384869502d", - "startBlock": 9604960 + "address": "0x4DeC9E3784EcC1eE002001BfE91deEf4A48931f8", + "startBlock": 11979239 }, { "name": "PoseidonT3", "address": "0xB43122Ecb241DD50062641f089876679fd06599a", - "startBlock": 9604960 + "startBlock": 11979239 }, { "name": "Semaphore", - "address": "0x697c80d1F2654e88d52B16154929EB976568DB04", - "startBlock": 9604960 + "address": "0x8A1fd199516489B0Fb7153EB5f075cDAC83c693D", + "startBlock": 11979239 } ] } diff --git a/packages/utils/src/semaphore-interface.json b/packages/utils/src/semaphore-interface.json index 4fa3cca7e..455365336 100644 --- a/packages/utils/src/semaphore-interface.json +++ b/packages/utils/src/semaphore-interface.json @@ -819,8 +819,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b5060405161204138038061204183398101604081905261002f91610054565b600380546001600160a01b0319166001600160a01b0392909216919091179055610084565b60006020828403121561006657600080fd5b81516001600160a01b038116811461007d57600080fd5b9392505050565b611fae806100936000396000f3fe608060405234801561001057600080fd5b50600436106101375760003560e01c80636389e107116100b8578063a9961c941161007c578063a9961c94146102b5578063d0d898dd146102de578063d24924fe146102f1578063da3cda52146102fa578063dabc4d511461030d578063fcf0b6ec1461032057600080fd5b80636389e1071461022c5780636cdd32fe1461024f5780637ee35a0c1461026257806390509d441461028257806396324bd41461029557600080fd5b80634178c4d5116100ff5780634178c4d5146101c8578063456f4188146101db578063568ee826146101fe578063575185ed146102115780635c3f3b601461021957600080fd5b8063042453711461013c57806306dd8485146101515780631783efc3146101775780632b7ac3f31461018a5780632c880363146101b5575b600080fd5b61014f61014a366004611a0e565b610333565b005b61016461015f366004611a5a565b610366565b6040519081526020015b60405180910390f35b61014f610185366004611a5a565b610387565b60035461019d906001600160a01b031681565b6040516001600160a01b03909116815260200161016e565b6101646101c3366004611a98565b6103b8565b61014f6101d6366004611ac2565b6103f0565b6101ee6101e9366004611b23565b610427565b604051901515815260200161016e565b61014f61020c366004611b5d565b61068c565b61016461069a565b610164610227366004611b89565b6106d1565b61016461023a366004611ba4565b60009081526020819052604090206001015490565b61014f61025d366004611bbd565b61070a565b610164610270366004611ba4565b60009081526020819052604090205490565b6101ee610290366004611a5a565b61073f565b6101646102a3366004611ba4565b60046020526000908152604090205481565b61019d6102c3366004611ba4565b6000908152600160205260409020546001600160a01b031690565b61014f6102ec366004611b23565b610761565b61016460055481565b61014f610308366004611ba4565b61084b565b61016461031b366004611ba4565b610857565b61014f61032e366004611a5a565b61087b565b600061034084848461090b565b600094855260046020908152604080872092875260019092019052909320429055505050565b600082815260208190526040812061037e90836109a9565b90505b92915050565b600061039383836109f6565b6000938452600460209081526040808620928652600190920190529092204290555050565b60058054600091826103c983611c26565b9190505590506103d98184610a98565b600081815260046020526040902091909155919050565b60006103ff8686868686610b22565b6000968752600460209081526040808920928952600190920190529095204290555050505050565b60008281526001602052604081205483906001600160a01b031661045e5760405163029f057960e01b815260040160405180910390fd5b60018335108061046f575060208335115b1561048d5760405163767b278960e11b815260040160405180910390fd5b600084815260208190526040812054908190036104bd5760405163c8b02e0160e01b815260040160405180910390fd5b60006104c886610857565b90508085602001351461054d576000868152600460208181526040808420898301358552600181018352908420548a855292909152549091829003610520576040516326994ac360e11b815260040160405180910390fd5b61052a8183611c3f565b42111561054a576040516309581a9960e41b815260040160405180910390fd5b50505b60035460408051808201825260a0880135815260c088013560208083019190915282516080808201855260e08b01358286019081526101008c0135606080850191909152908352855180870187526101208d013581526101408d01358186015283850152855180870187526101608d013581526101808d01358186015286519283018752848d013583528c870135948301949094526001600160a01b039096169563a23f019995929392820190610606908d0135610be9565b81526020016106188c60800135610be9565b90526040516001600160e01b031960e087901b16815261064194939291908c3590600401611cb4565b602060405180830381865afa15801561065e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106829190611d47565b9695505050505050565b6106968282610c20565b5050565b60058054600091826106ab83611c26565b9190505590506106bb8133610a98565b6000818152600460205260409020610e10905590565b60058054600091826106e283611c26565b9190505590506106f28183610a98565b6000818152600460205260409020610e109055919050565b600061071885858585610cb4565b60009586526004602090815260408088209288526001909201905290942042905550505050565b600082815260208181526040808320848452600301909152812054151561037e565b600082815260046020908152604080832084820135845260020190915290205460ff16156107a25760405163041162bd60e31b815260040160405180910390fd5b6107ac8282610427565b6107c95760405163012a9af160e61b815260040160405180910390fd5b6000828152600460209081526040808320848201358085526002909101835292819020805460ff1916600117905551608084013592918401359185917f0c32e14cfe81a05d371c248d22de6b7ae849e981b76a1f8842e7b6da73fc405a9161083f918735919060608901359060a08a0190611d70565b60405180910390a45050565b61085481610d72565b50565b60008181526020818152604080832060018101548452600201909152812054610381565b60008281526001602052604090205482906001600160a01b031633146108b4576040516317737e4f60e31b815260040160405180910390fd5b60008381526004602090815260409182902080549085905582518181529182018590529185917f264b2a8f6763c084235fe832ba903482b2ef1a521336881fc75b987c2dfd29c5910160405180910390a250505050565b60008381526001602052604081205484906001600160a01b03163314610944576040516317737e4f60e31b815260040160405180910390fd5b6000858152602081905260409020805490610960908686610e17565b9250857f61e5e8054e3daf084a0c6c646c065e8bf5e7ca4d5567bda942309bd1652f349d828787876040516109989493929190611d98565b60405180910390a250509392505050565b600081815260038301602052604081205481036109d957604051631c811d5b60e21b815260040160405180910390fd5b600082815260038401602052604090205461037e90600190611dde565b60008281526001602052604081205483906001600160a01b03163314610a2f576040516317737e4f60e31b815260040160405180910390fd5b6000848152602081905260409020805490610a4a9085611344565b604080518381526020810187905290810182905290935085907f19239b3f93cd10558aaf11423af70c77763bf54f52bcc75bfa74d4d13548cde99060600160405180910390a2505092915050565b60008281526001602052604080822080546001600160a01b0319166001600160a01b0385161790555183917ff0adfb94eab6daf835deb69c5738fe636150c3dfd08094a76f39b963dc8cb05a91a26040516001600160a01b0382169060009084907f0ba83579a0e79193ef649b9f5a8759d35af086ba62a3e207b52e4a8ae30d49e3908390a45050565b60008581526001602052604081205486906001600160a01b03163314610b5b576040516317737e4f60e31b815260040160405180910390fd5b6000878152602081905260408120610b7390886109a9565b6000898152602081905260409020909150610b91908888888861150d565b60408051838152602081018a90529081018890526060810182905290935088907fea3588e4a2a0c93d6a0e69dfeaf7496f43ccccf02ad9ce0a5b7627cbca4b61b19060800160405180910390a2505095945050505050565b6000600882604051602001610c0091815260200190565b60408051601f198184030181529190528051602090910120901c92915050565b60008281526001602052604090205482906001600160a01b03163314610c59576040516317737e4f60e31b815260040160405180910390fd5b60008381526002602052604080822080546001600160a01b0319166001600160a01b03861690811790915590519091339186917f1018365553cce55d9cb02ef73e18cc9311894f3fe1d1eafd235ac2d26cd8ba5891a4505050565b60008481526001602052604081205485906001600160a01b03163314610ced576040516317737e4f60e31b815260040160405180910390fd5b6000868152602081905260408120610d0590876109a9565b6000888152602081905260409020909150610d22908787876119a9565b604080518381526020810189905290810182905290935087907f3108849c053c77b8073a11256dffb5ffd5b55e93e105a355e1c9061db890d8719060600160405180910390a25050949350505050565b6000818152600260205260409020546001600160a01b03163314610da9576040516334c4245d60e01b815260040160405180910390fd5b60008181526001602090815260408083208054336001600160a01b031980831682179093556002909452828520805490921690915590516001600160a01b0390911692839185917f0ba83579a0e79193ef649b9f5a8759d35af086ba62a3e207b52e4a8ae30d49e391a45050565b8254600090815b83811015610f4857600080516020611f59833981519152858583818110610e4757610e47611c52565b9050602002013510610e6c576040516361c0541760e11b815260040160405180910390fd5b848482818110610e7e57610e7e611c52565b90506020020135600003610ea5576040516314b48df160e11b815260040160405180910390fd5b610eda86868684818110610ebb57610ebb611c52565b9050602002013560009081526003919091016020526040902054151590565b15610ef8576040516312c50cad60e11b815260040160405180910390fd5b80610f04836001611c3f565b610f0e9190611c3f565b866003016000878785818110610f2657610f26611c52565b6020908102929092013583525081019190915260400160002055600101610e1e565b50606084848080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525050506001880154919250505b610f918584611c3f565b610f9c826002611ed5565b1015610fb257610fab81611c26565b9050610f87565b60018701819055826000610fc68783611c3f565b9050600182811c90600090610fdb8185611dde565b610fe7911c6001611c3f565b905060005b858110156112d85760006110008484611dde565b905060008167ffffffffffffffff81111561101d5761101d611ee1565b604051908082528060200260200182016040528015611046578160200160208202803683370190505b50905060005b82811015611203576000886110618884611c3f565b61106c906002611ef7565b101561108f578f60020160008681526020019081526020016000205490506110cb565b8a8961109b8985611c3f565b6110a6906002611ef7565b6110b09190611dde565b815181106110c0576110c0611c52565b602002602001015190505b6000886110d88985611c3f565b6110e3906002611ef7565b6110ee906001611c3f565b101561113b578b8a6111008a86611c3f565b61110b906002611ef7565b611116906001611c3f565b6111209190611dde565b8151811061113057611130611c52565b602002602001015190505b600081156111d357604080518082018252848152602081018490529051632b0aac7f60e11b815273__$75f79a42d9bcbdbb69ad79ebd80f556f39$__9163561558fe9161118b9190600401611f0e565b602060405180830381865af41580156111a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111cc9190611f3f565b90506111d6565b50815b808585815181106111e9576111e9611c52565b60200260200101818152505083600101935050505061104c565b5085600116600103611254578860018a5161121e9190611dde565b8151811061122e5761122e611c52565b60200260200101518e60020160008581526020019081526020016000208190555061129f565b60018951111561129f578860028a5161126d9190611dde565b8151811061127d5761127d611c52565b60200260200101518e6002016000858152602001908152602001600020819055505b849650600185901c9450809850839550600180856112bd9190611dde565b6112c9911c6001611c3f565b93508260010192505050610fec565b506112e38988611c3f565b8b55855186906000906112f8576112f8611c52565b60200260200101518b6002016000878152602001908152602001600020819055508560008151811061132c5761132c611c52565b60200260200101519750505050505050509392505050565b6000600080516020611f598339815191528210611374576040516361c0541760e11b815260040160405180910390fd5b81600003611395576040516314b48df160e11b815260040160405180910390fd5b6000828152600384016020526040902054156113c4576040516312c50cad60e11b815260040160405180910390fd5b8254600180850154906113d8908390611c3f565b6113e3826002611ed5565b10156113f5576113f281611c26565b90505b600185018190558360005b828110156114d2578084901c6001166001036114b657604080518082018252600083815260028a0160209081529083902054825281018490529051632b0aac7f60e11b815273__$75f79a42d9bcbdbb69ad79ebd80f556f39$__9163561558fe9161146e9190600401611f0e565b602060405180830381865af415801561148b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114af9190611f3f565b91506114ca565b600081815260028801602052604090208290555b600101611400565b506114dc83611c26565b8087556000928352600287016020908152604080852084905596845260039097019096529390209390935550919050565b6000600080516020611f59833981519152841061153d576040516361c0541760e11b815260040160405180910390fd5b600085815260038701602052604090205461156b57604051631c811d5b60e21b815260040160405180910390fd5b60008481526003870160205260409020541561159a576040516312c50cad60e11b815260040160405180910390fd5b60006115a687876109a9565b8754909150859087906000906115be90600190611dde565b60018b0154909150600090815b81811015611920578087901c60011660010361177e57600080516020611f598339815191528a8a8581811061160257611602611c52565b9050602002013510611627576040516361c0541760e11b815260040160405180910390fd5b73__$75f79a42d9bcbdbb69ad79ebd80f556f39$__63561558fe60405180604001604052808d8d8881811061165e5761165e611c52565b905060200201358152602001898152506040518263ffffffff1660e01b815260040161168a9190611f0e565b602060405180830381865af41580156116a7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116cb9190611f3f565b955073__$75f79a42d9bcbdbb69ad79ebd80f556f39$__63561558fe60405180604001604052808d8d8881811061170457611704611c52565b905060200201358152602001888152506040518263ffffffff1660e01b81526004016117309190611f0e565b602060405180830381865af415801561174d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117719190611f3f565b9450826001019250611918565b86811c84821c1461190457600080516020611f598339815191528a8a858181106117aa576117aa611c52565b90506020020135106117cf576040516361c0541760e11b815260040160405180910390fd5b600081815260028e0160205260409020548590036117fb57600081815260028e01602052604090208690555b73__$75f79a42d9bcbdbb69ad79ebd80f556f39$__63561558fe60405180604001604052808981526020018d8d8881811061183857611838611c52565b905060200201358152506040518263ffffffff1660e01b815260040161185e9190611f0e565b602060405180830381865af415801561187b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061189f9190611f3f565b955073__$75f79a42d9bcbdbb69ad79ebd80f556f39$__63561558fe60405180604001604052808881526020018d8d888181106118de576118de611c52565b905060200201358152506040518263ffffffff1660e01b81526004016117309190611f0e565b600081815260028e01602052604090208690555b6001016115cb565b5060018c0154600090815260028d016020526040902054841461195657604051631fd4986360e11b815260040160405180910390fd5b600081815260028d016020526040902085905589156119885760008b815260038d016020526040808220548c83529120555b505050600088815260038a0160205260408120555091505095945050505050565b60006119b985856000868661150d565b95945050505050565b60008083601f8401126119d457600080fd5b50813567ffffffffffffffff8111156119ec57600080fd5b6020830191508360208260051b8501011115611a0757600080fd5b9250929050565b600080600060408486031215611a2357600080fd5b83359250602084013567ffffffffffffffff811115611a4157600080fd5b611a4d868287016119c2565b9497909650939450505050565b60008060408385031215611a6d57600080fd5b50508035926020909101359150565b80356001600160a01b0381168114611a9357600080fd5b919050565b60008060408385031215611aab57600080fd5b611ab483611a7c565b946020939093013593505050565b600080600080600060808688031215611ada57600080fd5b853594506020860135935060408601359250606086013567ffffffffffffffff811115611b0657600080fd5b611b12888289016119c2565b969995985093965092949392505050565b6000808284036101c0811215611b3857600080fd5b833592506101a0601f1982011215611b4f57600080fd5b506020830190509250929050565b60008060408385031215611b7057600080fd5b82359150611b8060208401611a7c565b90509250929050565b600060208284031215611b9b57600080fd5b61037e82611a7c565b600060208284031215611bb657600080fd5b5035919050565b60008060008060608587031215611bd357600080fd5b8435935060208501359250604085013567ffffffffffffffff811115611bf857600080fd5b611c04878288016119c2565b95989497509550505050565b634e487b7160e01b600052601160045260246000fd5b600060018201611c3857611c38611c10565b5060010190565b8082018082111561038157610381611c10565b634e487b7160e01b600052603260045260246000fd5b8060005b6002811015611c8b578151845260209384019390910190600101611c6c565b50505050565b8060005b6004811015611c8b578151845260209384019390910190600101611c95565b6101a08101611cc38288611c68565b6040808301876000805b6002808210611cdc5750611d16565b835185845b83811015611cff578251825260209283019290910190600101611ce1565b505050938501935060209290920191600101611ccd565b5050505050611d2860c0830186611c68565b611d36610100830185611c91565b826101808301529695505050505050565b600060208284031215611d5957600080fd5b81518015158114611d6957600080fd5b9392505050565b8481526020810184905260408101839052610160810161010083606084013795945050505050565b848152606060208201819052810183905260006001600160fb1b03841115611dbf57600080fd5b8360051b80866080850137604083019390935250016080019392505050565b8181038181111561038157610381611c10565b600181815b80851115611e2c578160001904821115611e1257611e12611c10565b80851615611e1f57918102915b93841c9390800290611df6565b509250929050565b600082611e4357506001610381565b81611e5057506000610381565b8160018114611e665760028114611e7057611e8c565b6001915050610381565b60ff841115611e8157611e81611c10565b50506001821b610381565b5060208310610133831016604e8410600b8410161715611eaf575081810a610381565b611eb98383611df1565b8060001904821115611ecd57611ecd611c10565b029392505050565b600061037e8383611e34565b634e487b7160e01b600052604160045260246000fd5b808202811582820484141761038157610381611c10565b60408101818360005b6002811015611f36578151835260209283019290910190600101611f17565b50505092915050565b600060208284031215611f5157600080fd5b505191905056fe30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f0000001a2646970667358221220718f30a72b653180d6c515e7d6b59ab794a48a61a69222cc7c670a97cebf31eb64736f6c63430008170033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101375760003560e01c80636389e107116100b8578063a9961c941161007c578063a9961c94146102b5578063d0d898dd146102de578063d24924fe146102f1578063da3cda52146102fa578063dabc4d511461030d578063fcf0b6ec1461032057600080fd5b80636389e1071461022c5780636cdd32fe1461024f5780637ee35a0c1461026257806390509d441461028257806396324bd41461029557600080fd5b80634178c4d5116100ff5780634178c4d5146101c8578063456f4188146101db578063568ee826146101fe578063575185ed146102115780635c3f3b601461021957600080fd5b8063042453711461013c57806306dd8485146101515780631783efc3146101775780632b7ac3f31461018a5780632c880363146101b5575b600080fd5b61014f61014a366004611a0e565b610333565b005b61016461015f366004611a5a565b610366565b6040519081526020015b60405180910390f35b61014f610185366004611a5a565b610387565b60035461019d906001600160a01b031681565b6040516001600160a01b03909116815260200161016e565b6101646101c3366004611a98565b6103b8565b61014f6101d6366004611ac2565b6103f0565b6101ee6101e9366004611b23565b610427565b604051901515815260200161016e565b61014f61020c366004611b5d565b61068c565b61016461069a565b610164610227366004611b89565b6106d1565b61016461023a366004611ba4565b60009081526020819052604090206001015490565b61014f61025d366004611bbd565b61070a565b610164610270366004611ba4565b60009081526020819052604090205490565b6101ee610290366004611a5a565b61073f565b6101646102a3366004611ba4565b60046020526000908152604090205481565b61019d6102c3366004611ba4565b6000908152600160205260409020546001600160a01b031690565b61014f6102ec366004611b23565b610761565b61016460055481565b61014f610308366004611ba4565b61084b565b61016461031b366004611ba4565b610857565b61014f61032e366004611a5a565b61087b565b600061034084848461090b565b600094855260046020908152604080872092875260019092019052909320429055505050565b600082815260208190526040812061037e90836109a9565b90505b92915050565b600061039383836109f6565b6000938452600460209081526040808620928652600190920190529092204290555050565b60058054600091826103c983611c26565b9190505590506103d98184610a98565b600081815260046020526040902091909155919050565b60006103ff8686868686610b22565b6000968752600460209081526040808920928952600190920190529095204290555050505050565b60008281526001602052604081205483906001600160a01b031661045e5760405163029f057960e01b815260040160405180910390fd5b60018335108061046f575060208335115b1561048d5760405163767b278960e11b815260040160405180910390fd5b600084815260208190526040812054908190036104bd5760405163c8b02e0160e01b815260040160405180910390fd5b60006104c886610857565b90508085602001351461054d576000868152600460208181526040808420898301358552600181018352908420548a855292909152549091829003610520576040516326994ac360e11b815260040160405180910390fd5b61052a8183611c3f565b42111561054a576040516309581a9960e41b815260040160405180910390fd5b50505b60035460408051808201825260a0880135815260c088013560208083019190915282516080808201855260e08b01358286019081526101008c0135606080850191909152908352855180870187526101208d013581526101408d01358186015283850152855180870187526101608d013581526101808d01358186015286519283018752848d013583528c870135948301949094526001600160a01b039096169563a23f019995929392820190610606908d0135610be9565b81526020016106188c60800135610be9565b90526040516001600160e01b031960e087901b16815261064194939291908c3590600401611cb4565b602060405180830381865afa15801561065e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106829190611d47565b9695505050505050565b6106968282610c20565b5050565b60058054600091826106ab83611c26565b9190505590506106bb8133610a98565b6000818152600460205260409020610e10905590565b60058054600091826106e283611c26565b9190505590506106f28183610a98565b6000818152600460205260409020610e109055919050565b600061071885858585610cb4565b60009586526004602090815260408088209288526001909201905290942042905550505050565b600082815260208181526040808320848452600301909152812054151561037e565b600082815260046020908152604080832084820135845260020190915290205460ff16156107a25760405163041162bd60e31b815260040160405180910390fd5b6107ac8282610427565b6107c95760405163012a9af160e61b815260040160405180910390fd5b6000828152600460209081526040808320848201358085526002909101835292819020805460ff1916600117905551608084013592918401359185917f0c32e14cfe81a05d371c248d22de6b7ae849e981b76a1f8842e7b6da73fc405a9161083f918735919060608901359060a08a0190611d70565b60405180910390a45050565b61085481610d72565b50565b60008181526020818152604080832060018101548452600201909152812054610381565b60008281526001602052604090205482906001600160a01b031633146108b4576040516317737e4f60e31b815260040160405180910390fd5b60008381526004602090815260409182902080549085905582518181529182018590529185917f264b2a8f6763c084235fe832ba903482b2ef1a521336881fc75b987c2dfd29c5910160405180910390a250505050565b60008381526001602052604081205484906001600160a01b03163314610944576040516317737e4f60e31b815260040160405180910390fd5b6000858152602081905260409020805490610960908686610e17565b9250857f61e5e8054e3daf084a0c6c646c065e8bf5e7ca4d5567bda942309bd1652f349d828787876040516109989493929190611d98565b60405180910390a250509392505050565b600081815260038301602052604081205481036109d957604051631c811d5b60e21b815260040160405180910390fd5b600082815260038401602052604090205461037e90600190611dde565b60008281526001602052604081205483906001600160a01b03163314610a2f576040516317737e4f60e31b815260040160405180910390fd5b6000848152602081905260409020805490610a4a9085611344565b604080518381526020810187905290810182905290935085907f19239b3f93cd10558aaf11423af70c77763bf54f52bcc75bfa74d4d13548cde99060600160405180910390a2505092915050565b60008281526001602052604080822080546001600160a01b0319166001600160a01b0385161790555183917ff0adfb94eab6daf835deb69c5738fe636150c3dfd08094a76f39b963dc8cb05a91a26040516001600160a01b0382169060009084907f0ba83579a0e79193ef649b9f5a8759d35af086ba62a3e207b52e4a8ae30d49e3908390a45050565b60008581526001602052604081205486906001600160a01b03163314610b5b576040516317737e4f60e31b815260040160405180910390fd5b6000878152602081905260408120610b7390886109a9565b6000898152602081905260409020909150610b91908888888861150d565b60408051838152602081018a90529081018890526060810182905290935088907fea3588e4a2a0c93d6a0e69dfeaf7496f43ccccf02ad9ce0a5b7627cbca4b61b19060800160405180910390a2505095945050505050565b6000600882604051602001610c0091815260200190565b60408051601f198184030181529190528051602090910120901c92915050565b60008281526001602052604090205482906001600160a01b03163314610c59576040516317737e4f60e31b815260040160405180910390fd5b60008381526002602052604080822080546001600160a01b0319166001600160a01b03861690811790915590519091339186917f1018365553cce55d9cb02ef73e18cc9311894f3fe1d1eafd235ac2d26cd8ba5891a4505050565b60008481526001602052604081205485906001600160a01b03163314610ced576040516317737e4f60e31b815260040160405180910390fd5b6000868152602081905260408120610d0590876109a9565b6000888152602081905260409020909150610d22908787876119a9565b604080518381526020810189905290810182905290935087907f3108849c053c77b8073a11256dffb5ffd5b55e93e105a355e1c9061db890d8719060600160405180910390a25050949350505050565b6000818152600260205260409020546001600160a01b03163314610da9576040516334c4245d60e01b815260040160405180910390fd5b60008181526001602090815260408083208054336001600160a01b031980831682179093556002909452828520805490921690915590516001600160a01b0390911692839185917f0ba83579a0e79193ef649b9f5a8759d35af086ba62a3e207b52e4a8ae30d49e391a45050565b8254600090815b83811015610f4857600080516020611f59833981519152858583818110610e4757610e47611c52565b9050602002013510610e6c576040516361c0541760e11b815260040160405180910390fd5b848482818110610e7e57610e7e611c52565b90506020020135600003610ea5576040516314b48df160e11b815260040160405180910390fd5b610eda86868684818110610ebb57610ebb611c52565b9050602002013560009081526003919091016020526040902054151590565b15610ef8576040516312c50cad60e11b815260040160405180910390fd5b80610f04836001611c3f565b610f0e9190611c3f565b866003016000878785818110610f2657610f26611c52565b6020908102929092013583525081019190915260400160002055600101610e1e565b50606084848080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525050506001880154919250505b610f918584611c3f565b610f9c826002611ed5565b1015610fb257610fab81611c26565b9050610f87565b60018701819055826000610fc68783611c3f565b9050600182811c90600090610fdb8185611dde565b610fe7911c6001611c3f565b905060005b858110156112d85760006110008484611dde565b905060008167ffffffffffffffff81111561101d5761101d611ee1565b604051908082528060200260200182016040528015611046578160200160208202803683370190505b50905060005b82811015611203576000886110618884611c3f565b61106c906002611ef7565b101561108f578f60020160008681526020019081526020016000205490506110cb565b8a8961109b8985611c3f565b6110a6906002611ef7565b6110b09190611dde565b815181106110c0576110c0611c52565b602002602001015190505b6000886110d88985611c3f565b6110e3906002611ef7565b6110ee906001611c3f565b101561113b578b8a6111008a86611c3f565b61110b906002611ef7565b611116906001611c3f565b6111209190611dde565b8151811061113057611130611c52565b602002602001015190505b600081156111d357604080518082018252848152602081018490529051632b0aac7f60e11b815273__$75f79a42d9bcbdbb69ad79ebd80f556f39$__9163561558fe9161118b9190600401611f0e565b602060405180830381865af41580156111a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111cc9190611f3f565b90506111d6565b50815b808585815181106111e9576111e9611c52565b60200260200101818152505083600101935050505061104c565b5085600116600103611254578860018a5161121e9190611dde565b8151811061122e5761122e611c52565b60200260200101518e60020160008581526020019081526020016000208190555061129f565b60018951111561129f578860028a5161126d9190611dde565b8151811061127d5761127d611c52565b60200260200101518e6002016000858152602001908152602001600020819055505b849650600185901c9450809850839550600180856112bd9190611dde565b6112c9911c6001611c3f565b93508260010192505050610fec565b506112e38988611c3f565b8b55855186906000906112f8576112f8611c52565b60200260200101518b6002016000878152602001908152602001600020819055508560008151811061132c5761132c611c52565b60200260200101519750505050505050509392505050565b6000600080516020611f598339815191528210611374576040516361c0541760e11b815260040160405180910390fd5b81600003611395576040516314b48df160e11b815260040160405180910390fd5b6000828152600384016020526040902054156113c4576040516312c50cad60e11b815260040160405180910390fd5b8254600180850154906113d8908390611c3f565b6113e3826002611ed5565b10156113f5576113f281611c26565b90505b600185018190558360005b828110156114d2578084901c6001166001036114b657604080518082018252600083815260028a0160209081529083902054825281018490529051632b0aac7f60e11b815273__$75f79a42d9bcbdbb69ad79ebd80f556f39$__9163561558fe9161146e9190600401611f0e565b602060405180830381865af415801561148b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114af9190611f3f565b91506114ca565b600081815260028801602052604090208290555b600101611400565b506114dc83611c26565b8087556000928352600287016020908152604080852084905596845260039097019096529390209390935550919050565b6000600080516020611f59833981519152841061153d576040516361c0541760e11b815260040160405180910390fd5b600085815260038701602052604090205461156b57604051631c811d5b60e21b815260040160405180910390fd5b60008481526003870160205260409020541561159a576040516312c50cad60e11b815260040160405180910390fd5b60006115a687876109a9565b8754909150859087906000906115be90600190611dde565b60018b0154909150600090815b81811015611920578087901c60011660010361177e57600080516020611f598339815191528a8a8581811061160257611602611c52565b9050602002013510611627576040516361c0541760e11b815260040160405180910390fd5b73__$75f79a42d9bcbdbb69ad79ebd80f556f39$__63561558fe60405180604001604052808d8d8881811061165e5761165e611c52565b905060200201358152602001898152506040518263ffffffff1660e01b815260040161168a9190611f0e565b602060405180830381865af41580156116a7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116cb9190611f3f565b955073__$75f79a42d9bcbdbb69ad79ebd80f556f39$__63561558fe60405180604001604052808d8d8881811061170457611704611c52565b905060200201358152602001888152506040518263ffffffff1660e01b81526004016117309190611f0e565b602060405180830381865af415801561174d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117719190611f3f565b9450826001019250611918565b86811c84821c1461190457600080516020611f598339815191528a8a858181106117aa576117aa611c52565b90506020020135106117cf576040516361c0541760e11b815260040160405180910390fd5b600081815260028e0160205260409020548590036117fb57600081815260028e01602052604090208690555b73__$75f79a42d9bcbdbb69ad79ebd80f556f39$__63561558fe60405180604001604052808981526020018d8d8881811061183857611838611c52565b905060200201358152506040518263ffffffff1660e01b815260040161185e9190611f0e565b602060405180830381865af415801561187b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061189f9190611f3f565b955073__$75f79a42d9bcbdbb69ad79ebd80f556f39$__63561558fe60405180604001604052808881526020018d8d888181106118de576118de611c52565b905060200201358152506040518263ffffffff1660e01b81526004016117309190611f0e565b600081815260028e01602052604090208690555b6001016115cb565b5060018c0154600090815260028d016020526040902054841461195657604051631fd4986360e11b815260040160405180910390fd5b600081815260028d016020526040902085905589156119885760008b815260038d016020526040808220548c83529120555b505050600088815260038a0160205260408120555091505095945050505050565b60006119b985856000868661150d565b95945050505050565b60008083601f8401126119d457600080fd5b50813567ffffffffffffffff8111156119ec57600080fd5b6020830191508360208260051b8501011115611a0757600080fd5b9250929050565b600080600060408486031215611a2357600080fd5b83359250602084013567ffffffffffffffff811115611a4157600080fd5b611a4d868287016119c2565b9497909650939450505050565b60008060408385031215611a6d57600080fd5b50508035926020909101359150565b80356001600160a01b0381168114611a9357600080fd5b919050565b60008060408385031215611aab57600080fd5b611ab483611a7c565b946020939093013593505050565b600080600080600060808688031215611ada57600080fd5b853594506020860135935060408601359250606086013567ffffffffffffffff811115611b0657600080fd5b611b12888289016119c2565b969995985093965092949392505050565b6000808284036101c0811215611b3857600080fd5b833592506101a0601f1982011215611b4f57600080fd5b506020830190509250929050565b60008060408385031215611b7057600080fd5b82359150611b8060208401611a7c565b90509250929050565b600060208284031215611b9b57600080fd5b61037e82611a7c565b600060208284031215611bb657600080fd5b5035919050565b60008060008060608587031215611bd357600080fd5b8435935060208501359250604085013567ffffffffffffffff811115611bf857600080fd5b611c04878288016119c2565b95989497509550505050565b634e487b7160e01b600052601160045260246000fd5b600060018201611c3857611c38611c10565b5060010190565b8082018082111561038157610381611c10565b634e487b7160e01b600052603260045260246000fd5b8060005b6002811015611c8b578151845260209384019390910190600101611c6c565b50505050565b8060005b6004811015611c8b578151845260209384019390910190600101611c95565b6101a08101611cc38288611c68565b6040808301876000805b6002808210611cdc5750611d16565b835185845b83811015611cff578251825260209283019290910190600101611ce1565b505050938501935060209290920191600101611ccd565b5050505050611d2860c0830186611c68565b611d36610100830185611c91565b826101808301529695505050505050565b600060208284031215611d5957600080fd5b81518015158114611d6957600080fd5b9392505050565b8481526020810184905260408101839052610160810161010083606084013795945050505050565b848152606060208201819052810183905260006001600160fb1b03841115611dbf57600080fd5b8360051b80866080850137604083019390935250016080019392505050565b8181038181111561038157610381611c10565b600181815b80851115611e2c578160001904821115611e1257611e12611c10565b80851615611e1f57918102915b93841c9390800290611df6565b509250929050565b600082611e4357506001610381565b81611e5057506000610381565b8160018114611e665760028114611e7057611e8c565b6001915050610381565b60ff841115611e8157611e81611c10565b50506001821b610381565b5060208310610133831016604e8410600b8410161715611eaf575081810a610381565b611eb98383611df1565b8060001904821115611ecd57611ecd611c10565b029392505050565b600061037e8383611e34565b634e487b7160e01b600052604160045260246000fd5b808202811582820484141761038157610381611c10565b60408101818360005b6002811015611f36578151835260209283019290910190600101611f17565b50505092915050565b600060208284031215611f5157600080fd5b505191905056fe30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f0000001a2646970667358221220718f30a72b653180d6c515e7d6b59ab794a48a61a69222cc7c670a97cebf31eb64736f6c63430008170033", + "bytecode": "0x608060405234801561001057600080fd5b5060405161204138038061204183398101604081905261002f91610054565b600380546001600160a01b0319166001600160a01b0392909216919091179055610084565b60006020828403121561006657600080fd5b81516001600160a01b038116811461007d57600080fd5b9392505050565b611fae806100936000396000f3fe608060405234801561001057600080fd5b50600436106101375760003560e01c80636389e107116100b8578063a9961c941161007c578063a9961c94146102b5578063d0d898dd146102de578063d24924fe146102f1578063da3cda52146102fa578063dabc4d511461030d578063fcf0b6ec1461032057600080fd5b80636389e1071461022c5780636cdd32fe1461024f5780637ee35a0c1461026257806390509d441461028257806396324bd41461029557600080fd5b80634178c4d5116100ff5780634178c4d5146101c8578063456f4188146101db578063568ee826146101fe578063575185ed146102115780635c3f3b601461021957600080fd5b8063042453711461013c57806306dd8485146101515780631783efc3146101775780632b7ac3f31461018a5780632c880363146101b5575b600080fd5b61014f61014a366004611a0e565b610333565b005b61016461015f366004611a5a565b610366565b6040519081526020015b60405180910390f35b61014f610185366004611a5a565b610387565b60035461019d906001600160a01b031681565b6040516001600160a01b03909116815260200161016e565b6101646101c3366004611a98565b6103b8565b61014f6101d6366004611ac2565b6103f0565b6101ee6101e9366004611b23565b610427565b604051901515815260200161016e565b61014f61020c366004611b5d565b61068c565b61016461069a565b610164610227366004611b89565b6106d1565b61016461023a366004611ba4565b60009081526020819052604090206001015490565b61014f61025d366004611bbd565b61070a565b610164610270366004611ba4565b60009081526020819052604090205490565b6101ee610290366004611a5a565b61073f565b6101646102a3366004611ba4565b60046020526000908152604090205481565b61019d6102c3366004611ba4565b6000908152600160205260409020546001600160a01b031690565b61014f6102ec366004611b23565b610761565b61016460055481565b61014f610308366004611ba4565b61084b565b61016461031b366004611ba4565b610857565b61014f61032e366004611a5a565b61087b565b600061034084848461090b565b600094855260046020908152604080872092875260019092019052909320429055505050565b600082815260208190526040812061037e90836109a9565b90505b92915050565b600061039383836109f6565b6000938452600460209081526040808620928652600190920190529092204290555050565b60058054600091826103c983611c26565b9190505590506103d98184610a98565b600081815260046020526040902091909155919050565b60006103ff8686868686610b22565b6000968752600460209081526040808920928952600190920190529095204290555050505050565b60008281526001602052604081205483906001600160a01b031661045e5760405163029f057960e01b815260040160405180910390fd5b60018335108061046f575060208335115b1561048d5760405163767b278960e11b815260040160405180910390fd5b600084815260208190526040812054908190036104bd5760405163c8b02e0160e01b815260040160405180910390fd5b60006104c886610857565b90508085602001351461054d576000868152600460208181526040808420898301358552600181018352908420548a855292909152549091829003610520576040516326994ac360e11b815260040160405180910390fd5b61052a8183611c3f565b42111561054a576040516309581a9960e41b815260040160405180910390fd5b50505b60035460408051808201825260a0880135815260c088013560208083019190915282516080808201855260e08b01358286019081526101008c0135606080850191909152908352855180870187526101208d013581526101408d01358186015283850152855180870187526101608d013581526101808d01358186015286519283018752848d013583528c870135948301949094526001600160a01b039096169563a23f019995929392820190610606908d0135610be9565b81526020016106188c60800135610be9565b90526040516001600160e01b031960e087901b16815261064194939291908c3590600401611cb4565b602060405180830381865afa15801561065e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106829190611d47565b9695505050505050565b6106968282610c20565b5050565b60058054600091826106ab83611c26565b9190505590506106bb8133610a98565b6000818152600460205260409020610e10905590565b60058054600091826106e283611c26565b9190505590506106f28183610a98565b6000818152600460205260409020610e109055919050565b600061071885858585610cb4565b60009586526004602090815260408088209288526001909201905290942042905550505050565b600082815260208181526040808320848452600301909152812054151561037e565b600082815260046020908152604080832084820135845260020190915290205460ff16156107a25760405163041162bd60e31b815260040160405180910390fd5b6107ac8282610427565b6107c95760405163012a9af160e61b815260040160405180910390fd5b6000828152600460209081526040808320848201358085526002909101835292819020805460ff1916600117905551608084013592918401359185917f0c32e14cfe81a05d371c248d22de6b7ae849e981b76a1f8842e7b6da73fc405a9161083f918735919060608901359060a08a0190611d70565b60405180910390a45050565b61085481610d72565b50565b60008181526020818152604080832060018101548452600201909152812054610381565b60008281526001602052604090205482906001600160a01b031633146108b4576040516317737e4f60e31b815260040160405180910390fd5b60008381526004602090815260409182902080549085905582518181529182018590529185917f264b2a8f6763c084235fe832ba903482b2ef1a521336881fc75b987c2dfd29c5910160405180910390a250505050565b60008381526001602052604081205484906001600160a01b03163314610944576040516317737e4f60e31b815260040160405180910390fd5b6000858152602081905260409020805490610960908686610e17565b9250857f61e5e8054e3daf084a0c6c646c065e8bf5e7ca4d5567bda942309bd1652f349d828787876040516109989493929190611d98565b60405180910390a250509392505050565b600081815260038301602052604081205481036109d957604051631c811d5b60e21b815260040160405180910390fd5b600082815260038401602052604090205461037e90600190611dde565b60008281526001602052604081205483906001600160a01b03163314610a2f576040516317737e4f60e31b815260040160405180910390fd5b6000848152602081905260409020805490610a4a9085611344565b604080518381526020810187905290810182905290935085907f19239b3f93cd10558aaf11423af70c77763bf54f52bcc75bfa74d4d13548cde99060600160405180910390a2505092915050565b60008281526001602052604080822080546001600160a01b0319166001600160a01b0385161790555183917ff0adfb94eab6daf835deb69c5738fe636150c3dfd08094a76f39b963dc8cb05a91a26040516001600160a01b0382169060009084907f0ba83579a0e79193ef649b9f5a8759d35af086ba62a3e207b52e4a8ae30d49e3908390a45050565b60008581526001602052604081205486906001600160a01b03163314610b5b576040516317737e4f60e31b815260040160405180910390fd5b6000878152602081905260408120610b7390886109a9565b6000898152602081905260409020909150610b91908888888861150d565b60408051838152602081018a90529081018890526060810182905290935088907fea3588e4a2a0c93d6a0e69dfeaf7496f43ccccf02ad9ce0a5b7627cbca4b61b19060800160405180910390a2505095945050505050565b6000600882604051602001610c0091815260200190565b60408051601f198184030181529190528051602090910120901c92915050565b60008281526001602052604090205482906001600160a01b03163314610c59576040516317737e4f60e31b815260040160405180910390fd5b60008381526002602052604080822080546001600160a01b0319166001600160a01b03861690811790915590519091339186917f1018365553cce55d9cb02ef73e18cc9311894f3fe1d1eafd235ac2d26cd8ba5891a4505050565b60008481526001602052604081205485906001600160a01b03163314610ced576040516317737e4f60e31b815260040160405180910390fd5b6000868152602081905260408120610d0590876109a9565b6000888152602081905260409020909150610d22908787876119a9565b604080518381526020810189905290810182905290935087907f3108849c053c77b8073a11256dffb5ffd5b55e93e105a355e1c9061db890d8719060600160405180910390a25050949350505050565b6000818152600260205260409020546001600160a01b03163314610da9576040516334c4245d60e01b815260040160405180910390fd5b60008181526001602090815260408083208054336001600160a01b031980831682179093556002909452828520805490921690915590516001600160a01b0390911692839185917f0ba83579a0e79193ef649b9f5a8759d35af086ba62a3e207b52e4a8ae30d49e391a45050565b8254600090815b83811015610f4857600080516020611f59833981519152858583818110610e4757610e47611c52565b9050602002013510610e6c576040516361c0541760e11b815260040160405180910390fd5b848482818110610e7e57610e7e611c52565b90506020020135600003610ea5576040516314b48df160e11b815260040160405180910390fd5b610eda86868684818110610ebb57610ebb611c52565b9050602002013560009081526003919091016020526040902054151590565b15610ef8576040516312c50cad60e11b815260040160405180910390fd5b80610f04836001611c3f565b610f0e9190611c3f565b866003016000878785818110610f2657610f26611c52565b6020908102929092013583525081019190915260400160002055600101610e1e565b50606084848080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525050506001880154919250505b610f918584611c3f565b610f9c826002611ed5565b1015610fb257610fab81611c26565b9050610f87565b60018701819055826000610fc68783611c3f565b9050600182811c90600090610fdb8185611dde565b610fe7911c6001611c3f565b905060005b858110156112d85760006110008484611dde565b905060008167ffffffffffffffff81111561101d5761101d611ee1565b604051908082528060200260200182016040528015611046578160200160208202803683370190505b50905060005b82811015611203576000886110618884611c3f565b61106c906002611ef7565b101561108f578f60020160008681526020019081526020016000205490506110cb565b8a8961109b8985611c3f565b6110a6906002611ef7565b6110b09190611dde565b815181106110c0576110c0611c52565b602002602001015190505b6000886110d88985611c3f565b6110e3906002611ef7565b6110ee906001611c3f565b101561113b578b8a6111008a86611c3f565b61110b906002611ef7565b611116906001611c3f565b6111209190611dde565b8151811061113057611130611c52565b602002602001015190505b600081156111d357604080518082018252848152602081018490529051632b0aac7f60e11b815273__$75f79a42d9bcbdbb69ad79ebd80f556f39$__9163561558fe9161118b9190600401611f0e565b602060405180830381865af41580156111a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111cc9190611f3f565b90506111d6565b50815b808585815181106111e9576111e9611c52565b60200260200101818152505083600101935050505061104c565b5085600116600103611254578860018a5161121e9190611dde565b8151811061122e5761122e611c52565b60200260200101518e60020160008581526020019081526020016000208190555061129f565b60018951111561129f578860028a5161126d9190611dde565b8151811061127d5761127d611c52565b60200260200101518e6002016000858152602001908152602001600020819055505b849650600185901c9450809850839550600180856112bd9190611dde565b6112c9911c6001611c3f565b93508260010192505050610fec565b506112e38988611c3f565b8b55855186906000906112f8576112f8611c52565b60200260200101518b6002016000878152602001908152602001600020819055508560008151811061132c5761132c611c52565b60200260200101519750505050505050509392505050565b6000600080516020611f598339815191528210611374576040516361c0541760e11b815260040160405180910390fd5b81600003611395576040516314b48df160e11b815260040160405180910390fd5b6000828152600384016020526040902054156113c4576040516312c50cad60e11b815260040160405180910390fd5b8254600180850154906113d8908390611c3f565b6113e3826002611ed5565b10156113f5576113f281611c26565b90505b600185018190558360005b828110156114d2578084901c6001166001036114b657604080518082018252600083815260028a0160209081529083902054825281018490529051632b0aac7f60e11b815273__$75f79a42d9bcbdbb69ad79ebd80f556f39$__9163561558fe9161146e9190600401611f0e565b602060405180830381865af415801561148b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114af9190611f3f565b91506114ca565b600081815260028801602052604090208290555b600101611400565b506114dc83611c26565b8087556000928352600287016020908152604080852084905596845260039097019096529390209390935550919050565b6000600080516020611f59833981519152841061153d576040516361c0541760e11b815260040160405180910390fd5b600085815260038701602052604090205461156b57604051631c811d5b60e21b815260040160405180910390fd5b60008481526003870160205260409020541561159a576040516312c50cad60e11b815260040160405180910390fd5b60006115a687876109a9565b8754909150859087906000906115be90600190611dde565b60018b0154909150600090815b81811015611920578087901c60011660010361177e57600080516020611f598339815191528a8a8581811061160257611602611c52565b9050602002013510611627576040516361c0541760e11b815260040160405180910390fd5b73__$75f79a42d9bcbdbb69ad79ebd80f556f39$__63561558fe60405180604001604052808d8d8881811061165e5761165e611c52565b905060200201358152602001898152506040518263ffffffff1660e01b815260040161168a9190611f0e565b602060405180830381865af41580156116a7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116cb9190611f3f565b955073__$75f79a42d9bcbdbb69ad79ebd80f556f39$__63561558fe60405180604001604052808d8d8881811061170457611704611c52565b905060200201358152602001888152506040518263ffffffff1660e01b81526004016117309190611f0e565b602060405180830381865af415801561174d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117719190611f3f565b9450826001019250611918565b86811c84821c1461190457600080516020611f598339815191528a8a858181106117aa576117aa611c52565b90506020020135106117cf576040516361c0541760e11b815260040160405180910390fd5b600081815260028e0160205260409020548590036117fb57600081815260028e01602052604090208690555b73__$75f79a42d9bcbdbb69ad79ebd80f556f39$__63561558fe60405180604001604052808981526020018d8d8881811061183857611838611c52565b905060200201358152506040518263ffffffff1660e01b815260040161185e9190611f0e565b602060405180830381865af415801561187b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061189f9190611f3f565b955073__$75f79a42d9bcbdbb69ad79ebd80f556f39$__63561558fe60405180604001604052808881526020018d8d888181106118de576118de611c52565b905060200201358152506040518263ffffffff1660e01b81526004016117309190611f0e565b600081815260028e01602052604090208690555b6001016115cb565b5060018c0154600090815260028d016020526040902054841461195657604051631fd4986360e11b815260040160405180910390fd5b600081815260028d016020526040902085905589156119885760008b815260038d016020526040808220548c83529120555b505050600088815260038a0160205260408120555091505095945050505050565b60006119b985856000868661150d565b95945050505050565b60008083601f8401126119d457600080fd5b50813567ffffffffffffffff8111156119ec57600080fd5b6020830191508360208260051b8501011115611a0757600080fd5b9250929050565b600080600060408486031215611a2357600080fd5b83359250602084013567ffffffffffffffff811115611a4157600080fd5b611a4d868287016119c2565b9497909650939450505050565b60008060408385031215611a6d57600080fd5b50508035926020909101359150565b80356001600160a01b0381168114611a9357600080fd5b919050565b60008060408385031215611aab57600080fd5b611ab483611a7c565b946020939093013593505050565b600080600080600060808688031215611ada57600080fd5b853594506020860135935060408601359250606086013567ffffffffffffffff811115611b0657600080fd5b611b12888289016119c2565b969995985093965092949392505050565b6000808284036101c0811215611b3857600080fd5b833592506101a0601f1982011215611b4f57600080fd5b506020830190509250929050565b60008060408385031215611b7057600080fd5b82359150611b8060208401611a7c565b90509250929050565b600060208284031215611b9b57600080fd5b61037e82611a7c565b600060208284031215611bb657600080fd5b5035919050565b60008060008060608587031215611bd357600080fd5b8435935060208501359250604085013567ffffffffffffffff811115611bf857600080fd5b611c04878288016119c2565b95989497509550505050565b634e487b7160e01b600052601160045260246000fd5b600060018201611c3857611c38611c10565b5060010190565b8082018082111561038157610381611c10565b634e487b7160e01b600052603260045260246000fd5b8060005b6002811015611c8b578151845260209384019390910190600101611c6c565b50505050565b8060005b6004811015611c8b578151845260209384019390910190600101611c95565b6101a08101611cc38288611c68565b6040808301876000805b6002808210611cdc5750611d16565b835185845b83811015611cff578251825260209283019290910190600101611ce1565b505050938501935060209290920191600101611ccd565b5050505050611d2860c0830186611c68565b611d36610100830185611c91565b826101808301529695505050505050565b600060208284031215611d5957600080fd5b81518015158114611d6957600080fd5b9392505050565b8481526020810184905260408101839052610160810161010083606084013795945050505050565b848152606060208201819052810183905260006001600160fb1b03841115611dbf57600080fd5b8360051b80866080850137604083019390935250016080019392505050565b8181038181111561038157610381611c10565b600181815b80851115611e2c578160001904821115611e1257611e12611c10565b80851615611e1f57918102915b93841c9390800290611df6565b509250929050565b600082611e4357506001610381565b81611e5057506000610381565b8160018114611e665760028114611e7057611e8c565b6001915050610381565b60ff841115611e8157611e81611c10565b50506001821b610381565b5060208310610133831016604e8410600b8410161715611eaf575081810a610381565b611eb98383611df1565b8060001904821115611ecd57611ecd611c10565b029392505050565b600061037e8383611e34565b634e487b7160e01b600052604160045260246000fd5b808202811582820484141761038157610381611c10565b60408101818360005b6002811015611f36578151835260209283019290910190600101611f17565b50505092915050565b600060208284031215611f5157600080fd5b505191905056fe30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f0000001a264697066735822122084e705462004ac3836e73fc250636bb9e4adb10992b32ba2998bce788eb1639f64736f6c63430008170033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101375760003560e01c80636389e107116100b8578063a9961c941161007c578063a9961c94146102b5578063d0d898dd146102de578063d24924fe146102f1578063da3cda52146102fa578063dabc4d511461030d578063fcf0b6ec1461032057600080fd5b80636389e1071461022c5780636cdd32fe1461024f5780637ee35a0c1461026257806390509d441461028257806396324bd41461029557600080fd5b80634178c4d5116100ff5780634178c4d5146101c8578063456f4188146101db578063568ee826146101fe578063575185ed146102115780635c3f3b601461021957600080fd5b8063042453711461013c57806306dd8485146101515780631783efc3146101775780632b7ac3f31461018a5780632c880363146101b5575b600080fd5b61014f61014a366004611a0e565b610333565b005b61016461015f366004611a5a565b610366565b6040519081526020015b60405180910390f35b61014f610185366004611a5a565b610387565b60035461019d906001600160a01b031681565b6040516001600160a01b03909116815260200161016e565b6101646101c3366004611a98565b6103b8565b61014f6101d6366004611ac2565b6103f0565b6101ee6101e9366004611b23565b610427565b604051901515815260200161016e565b61014f61020c366004611b5d565b61068c565b61016461069a565b610164610227366004611b89565b6106d1565b61016461023a366004611ba4565b60009081526020819052604090206001015490565b61014f61025d366004611bbd565b61070a565b610164610270366004611ba4565b60009081526020819052604090205490565b6101ee610290366004611a5a565b61073f565b6101646102a3366004611ba4565b60046020526000908152604090205481565b61019d6102c3366004611ba4565b6000908152600160205260409020546001600160a01b031690565b61014f6102ec366004611b23565b610761565b61016460055481565b61014f610308366004611ba4565b61084b565b61016461031b366004611ba4565b610857565b61014f61032e366004611a5a565b61087b565b600061034084848461090b565b600094855260046020908152604080872092875260019092019052909320429055505050565b600082815260208190526040812061037e90836109a9565b90505b92915050565b600061039383836109f6565b6000938452600460209081526040808620928652600190920190529092204290555050565b60058054600091826103c983611c26565b9190505590506103d98184610a98565b600081815260046020526040902091909155919050565b60006103ff8686868686610b22565b6000968752600460209081526040808920928952600190920190529095204290555050505050565b60008281526001602052604081205483906001600160a01b031661045e5760405163029f057960e01b815260040160405180910390fd5b60018335108061046f575060208335115b1561048d5760405163767b278960e11b815260040160405180910390fd5b600084815260208190526040812054908190036104bd5760405163c8b02e0160e01b815260040160405180910390fd5b60006104c886610857565b90508085602001351461054d576000868152600460208181526040808420898301358552600181018352908420548a855292909152549091829003610520576040516326994ac360e11b815260040160405180910390fd5b61052a8183611c3f565b42111561054a576040516309581a9960e41b815260040160405180910390fd5b50505b60035460408051808201825260a0880135815260c088013560208083019190915282516080808201855260e08b01358286019081526101008c0135606080850191909152908352855180870187526101208d013581526101408d01358186015283850152855180870187526101608d013581526101808d01358186015286519283018752848d013583528c870135948301949094526001600160a01b039096169563a23f019995929392820190610606908d0135610be9565b81526020016106188c60800135610be9565b90526040516001600160e01b031960e087901b16815261064194939291908c3590600401611cb4565b602060405180830381865afa15801561065e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106829190611d47565b9695505050505050565b6106968282610c20565b5050565b60058054600091826106ab83611c26565b9190505590506106bb8133610a98565b6000818152600460205260409020610e10905590565b60058054600091826106e283611c26565b9190505590506106f28183610a98565b6000818152600460205260409020610e109055919050565b600061071885858585610cb4565b60009586526004602090815260408088209288526001909201905290942042905550505050565b600082815260208181526040808320848452600301909152812054151561037e565b600082815260046020908152604080832084820135845260020190915290205460ff16156107a25760405163041162bd60e31b815260040160405180910390fd5b6107ac8282610427565b6107c95760405163012a9af160e61b815260040160405180910390fd5b6000828152600460209081526040808320848201358085526002909101835292819020805460ff1916600117905551608084013592918401359185917f0c32e14cfe81a05d371c248d22de6b7ae849e981b76a1f8842e7b6da73fc405a9161083f918735919060608901359060a08a0190611d70565b60405180910390a45050565b61085481610d72565b50565b60008181526020818152604080832060018101548452600201909152812054610381565b60008281526001602052604090205482906001600160a01b031633146108b4576040516317737e4f60e31b815260040160405180910390fd5b60008381526004602090815260409182902080549085905582518181529182018590529185917f264b2a8f6763c084235fe832ba903482b2ef1a521336881fc75b987c2dfd29c5910160405180910390a250505050565b60008381526001602052604081205484906001600160a01b03163314610944576040516317737e4f60e31b815260040160405180910390fd5b6000858152602081905260409020805490610960908686610e17565b9250857f61e5e8054e3daf084a0c6c646c065e8bf5e7ca4d5567bda942309bd1652f349d828787876040516109989493929190611d98565b60405180910390a250509392505050565b600081815260038301602052604081205481036109d957604051631c811d5b60e21b815260040160405180910390fd5b600082815260038401602052604090205461037e90600190611dde565b60008281526001602052604081205483906001600160a01b03163314610a2f576040516317737e4f60e31b815260040160405180910390fd5b6000848152602081905260409020805490610a4a9085611344565b604080518381526020810187905290810182905290935085907f19239b3f93cd10558aaf11423af70c77763bf54f52bcc75bfa74d4d13548cde99060600160405180910390a2505092915050565b60008281526001602052604080822080546001600160a01b0319166001600160a01b0385161790555183917ff0adfb94eab6daf835deb69c5738fe636150c3dfd08094a76f39b963dc8cb05a91a26040516001600160a01b0382169060009084907f0ba83579a0e79193ef649b9f5a8759d35af086ba62a3e207b52e4a8ae30d49e3908390a45050565b60008581526001602052604081205486906001600160a01b03163314610b5b576040516317737e4f60e31b815260040160405180910390fd5b6000878152602081905260408120610b7390886109a9565b6000898152602081905260409020909150610b91908888888861150d565b60408051838152602081018a90529081018890526060810182905290935088907fea3588e4a2a0c93d6a0e69dfeaf7496f43ccccf02ad9ce0a5b7627cbca4b61b19060800160405180910390a2505095945050505050565b6000600882604051602001610c0091815260200190565b60408051601f198184030181529190528051602090910120901c92915050565b60008281526001602052604090205482906001600160a01b03163314610c59576040516317737e4f60e31b815260040160405180910390fd5b60008381526002602052604080822080546001600160a01b0319166001600160a01b03861690811790915590519091339186917f1018365553cce55d9cb02ef73e18cc9311894f3fe1d1eafd235ac2d26cd8ba5891a4505050565b60008481526001602052604081205485906001600160a01b03163314610ced576040516317737e4f60e31b815260040160405180910390fd5b6000868152602081905260408120610d0590876109a9565b6000888152602081905260409020909150610d22908787876119a9565b604080518381526020810189905290810182905290935087907f3108849c053c77b8073a11256dffb5ffd5b55e93e105a355e1c9061db890d8719060600160405180910390a25050949350505050565b6000818152600260205260409020546001600160a01b03163314610da9576040516334c4245d60e01b815260040160405180910390fd5b60008181526001602090815260408083208054336001600160a01b031980831682179093556002909452828520805490921690915590516001600160a01b0390911692839185917f0ba83579a0e79193ef649b9f5a8759d35af086ba62a3e207b52e4a8ae30d49e391a45050565b8254600090815b83811015610f4857600080516020611f59833981519152858583818110610e4757610e47611c52565b9050602002013510610e6c576040516361c0541760e11b815260040160405180910390fd5b848482818110610e7e57610e7e611c52565b90506020020135600003610ea5576040516314b48df160e11b815260040160405180910390fd5b610eda86868684818110610ebb57610ebb611c52565b9050602002013560009081526003919091016020526040902054151590565b15610ef8576040516312c50cad60e11b815260040160405180910390fd5b80610f04836001611c3f565b610f0e9190611c3f565b866003016000878785818110610f2657610f26611c52565b6020908102929092013583525081019190915260400160002055600101610e1e565b50606084848080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525050506001880154919250505b610f918584611c3f565b610f9c826002611ed5565b1015610fb257610fab81611c26565b9050610f87565b60018701819055826000610fc68783611c3f565b9050600182811c90600090610fdb8185611dde565b610fe7911c6001611c3f565b905060005b858110156112d85760006110008484611dde565b905060008167ffffffffffffffff81111561101d5761101d611ee1565b604051908082528060200260200182016040528015611046578160200160208202803683370190505b50905060005b82811015611203576000886110618884611c3f565b61106c906002611ef7565b101561108f578f60020160008681526020019081526020016000205490506110cb565b8a8961109b8985611c3f565b6110a6906002611ef7565b6110b09190611dde565b815181106110c0576110c0611c52565b602002602001015190505b6000886110d88985611c3f565b6110e3906002611ef7565b6110ee906001611c3f565b101561113b578b8a6111008a86611c3f565b61110b906002611ef7565b611116906001611c3f565b6111209190611dde565b8151811061113057611130611c52565b602002602001015190505b600081156111d357604080518082018252848152602081018490529051632b0aac7f60e11b815273__$75f79a42d9bcbdbb69ad79ebd80f556f39$__9163561558fe9161118b9190600401611f0e565b602060405180830381865af41580156111a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111cc9190611f3f565b90506111d6565b50815b808585815181106111e9576111e9611c52565b60200260200101818152505083600101935050505061104c565b5085600116600103611254578860018a5161121e9190611dde565b8151811061122e5761122e611c52565b60200260200101518e60020160008581526020019081526020016000208190555061129f565b60018951111561129f578860028a5161126d9190611dde565b8151811061127d5761127d611c52565b60200260200101518e6002016000858152602001908152602001600020819055505b849650600185901c9450809850839550600180856112bd9190611dde565b6112c9911c6001611c3f565b93508260010192505050610fec565b506112e38988611c3f565b8b55855186906000906112f8576112f8611c52565b60200260200101518b6002016000878152602001908152602001600020819055508560008151811061132c5761132c611c52565b60200260200101519750505050505050509392505050565b6000600080516020611f598339815191528210611374576040516361c0541760e11b815260040160405180910390fd5b81600003611395576040516314b48df160e11b815260040160405180910390fd5b6000828152600384016020526040902054156113c4576040516312c50cad60e11b815260040160405180910390fd5b8254600180850154906113d8908390611c3f565b6113e3826002611ed5565b10156113f5576113f281611c26565b90505b600185018190558360005b828110156114d2578084901c6001166001036114b657604080518082018252600083815260028a0160209081529083902054825281018490529051632b0aac7f60e11b815273__$75f79a42d9bcbdbb69ad79ebd80f556f39$__9163561558fe9161146e9190600401611f0e565b602060405180830381865af415801561148b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114af9190611f3f565b91506114ca565b600081815260028801602052604090208290555b600101611400565b506114dc83611c26565b8087556000928352600287016020908152604080852084905596845260039097019096529390209390935550919050565b6000600080516020611f59833981519152841061153d576040516361c0541760e11b815260040160405180910390fd5b600085815260038701602052604090205461156b57604051631c811d5b60e21b815260040160405180910390fd5b60008481526003870160205260409020541561159a576040516312c50cad60e11b815260040160405180910390fd5b60006115a687876109a9565b8754909150859087906000906115be90600190611dde565b60018b0154909150600090815b81811015611920578087901c60011660010361177e57600080516020611f598339815191528a8a8581811061160257611602611c52565b9050602002013510611627576040516361c0541760e11b815260040160405180910390fd5b73__$75f79a42d9bcbdbb69ad79ebd80f556f39$__63561558fe60405180604001604052808d8d8881811061165e5761165e611c52565b905060200201358152602001898152506040518263ffffffff1660e01b815260040161168a9190611f0e565b602060405180830381865af41580156116a7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116cb9190611f3f565b955073__$75f79a42d9bcbdbb69ad79ebd80f556f39$__63561558fe60405180604001604052808d8d8881811061170457611704611c52565b905060200201358152602001888152506040518263ffffffff1660e01b81526004016117309190611f0e565b602060405180830381865af415801561174d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117719190611f3f565b9450826001019250611918565b86811c84821c1461190457600080516020611f598339815191528a8a858181106117aa576117aa611c52565b90506020020135106117cf576040516361c0541760e11b815260040160405180910390fd5b600081815260028e0160205260409020548590036117fb57600081815260028e01602052604090208690555b73__$75f79a42d9bcbdbb69ad79ebd80f556f39$__63561558fe60405180604001604052808981526020018d8d8881811061183857611838611c52565b905060200201358152506040518263ffffffff1660e01b815260040161185e9190611f0e565b602060405180830381865af415801561187b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061189f9190611f3f565b955073__$75f79a42d9bcbdbb69ad79ebd80f556f39$__63561558fe60405180604001604052808881526020018d8d888181106118de576118de611c52565b905060200201358152506040518263ffffffff1660e01b81526004016117309190611f0e565b600081815260028e01602052604090208690555b6001016115cb565b5060018c0154600090815260028d016020526040902054841461195657604051631fd4986360e11b815260040160405180910390fd5b600081815260028d016020526040902085905589156119885760008b815260038d016020526040808220548c83529120555b505050600088815260038a0160205260408120555091505095945050505050565b60006119b985856000868661150d565b95945050505050565b60008083601f8401126119d457600080fd5b50813567ffffffffffffffff8111156119ec57600080fd5b6020830191508360208260051b8501011115611a0757600080fd5b9250929050565b600080600060408486031215611a2357600080fd5b83359250602084013567ffffffffffffffff811115611a4157600080fd5b611a4d868287016119c2565b9497909650939450505050565b60008060408385031215611a6d57600080fd5b50508035926020909101359150565b80356001600160a01b0381168114611a9357600080fd5b919050565b60008060408385031215611aab57600080fd5b611ab483611a7c565b946020939093013593505050565b600080600080600060808688031215611ada57600080fd5b853594506020860135935060408601359250606086013567ffffffffffffffff811115611b0657600080fd5b611b12888289016119c2565b969995985093965092949392505050565b6000808284036101c0811215611b3857600080fd5b833592506101a0601f1982011215611b4f57600080fd5b506020830190509250929050565b60008060408385031215611b7057600080fd5b82359150611b8060208401611a7c565b90509250929050565b600060208284031215611b9b57600080fd5b61037e82611a7c565b600060208284031215611bb657600080fd5b5035919050565b60008060008060608587031215611bd357600080fd5b8435935060208501359250604085013567ffffffffffffffff811115611bf857600080fd5b611c04878288016119c2565b95989497509550505050565b634e487b7160e01b600052601160045260246000fd5b600060018201611c3857611c38611c10565b5060010190565b8082018082111561038157610381611c10565b634e487b7160e01b600052603260045260246000fd5b8060005b6002811015611c8b578151845260209384019390910190600101611c6c565b50505050565b8060005b6004811015611c8b578151845260209384019390910190600101611c95565b6101a08101611cc38288611c68565b6040808301876000805b6002808210611cdc5750611d16565b835185845b83811015611cff578251825260209283019290910190600101611ce1565b505050938501935060209290920191600101611ccd565b5050505050611d2860c0830186611c68565b611d36610100830185611c91565b826101808301529695505050505050565b600060208284031215611d5957600080fd5b81518015158114611d6957600080fd5b9392505050565b8481526020810184905260408101839052610160810161010083606084013795945050505050565b848152606060208201819052810183905260006001600160fb1b03841115611dbf57600080fd5b8360051b80866080850137604083019390935250016080019392505050565b8181038181111561038157610381611c10565b600181815b80851115611e2c578160001904821115611e1257611e12611c10565b80851615611e1f57918102915b93841c9390800290611df6565b509250929050565b600082611e4357506001610381565b81611e5057506000610381565b8160018114611e665760028114611e7057611e8c565b6001915050610381565b60ff841115611e8157611e81611c10565b50506001821b610381565b5060208310610133831016604e8410600b8410161715611eaf575081810a610381565b611eb98383611df1565b8060001904821115611ecd57611ecd611c10565b029392505050565b600061037e8383611e34565b634e487b7160e01b600052604160045260246000fd5b808202811582820484141761038157610381611c10565b60408101818360005b6002811015611f36578151835260209283019290910190600101611f17565b50505092915050565b600060208284031215611f5157600080fd5b505191905056fe30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f0000001a264697066735822122084e705462004ac3836e73fc250636bb9e4adb10992b32ba2998bce788eb1639f64736f6c63430008170033", "linkReferences": { "poseidon-solidity/PoseidonT3.sol": { "PoseidonT3": [ From 8c359ad594afed7f485d0e9677a57a12df49dce4 Mon Sep 17 00:00:00 2001 From: Vivian Plasencia Date: Mon, 8 Sep 2025 15:02:57 +0200 Subject: [PATCH 3/3] chore: v4.13.1 --- apps/docs/package.json | 2 +- packages/circuits/package.json | 2 +- .../package.json | 4 +- .../package.json | 10 +-- .../apps/contracts/package.json | 8 +- .../apps/web-app/package.json | 6 +- .../cli-template-monorepo-ethers/package.json | 2 +- .../apps/contracts/package.json | 8 +- .../apps/web-app/package.json | 6 +- .../package.json | 2 +- packages/cli/package.json | 6 +- packages/contracts/contracts/package.json | 2 +- packages/core/package.json | 8 +- packages/data/package.json | 4 +- packages/group/package.json | 2 +- packages/hardhat/package.json | 4 +- packages/identity/package.json | 2 +- packages/proof/package.json | 8 +- packages/utils/package.json | 2 +- yarn.lock | 76 +++++++++---------- 20 files changed, 82 insertions(+), 82 deletions(-) diff --git a/apps/docs/package.json b/apps/docs/package.json index 9a81d031e..882ccfd76 100644 --- a/apps/docs/package.json +++ b/apps/docs/package.json @@ -19,7 +19,7 @@ "@docusaurus/core": "3.5.2", "@docusaurus/preset-classic": "3.5.2", "@mdx-js/react": "^3.0.0", - "@semaphore-protocol/utils": "4.13.0", + "@semaphore-protocol/utils": "4.13.1", "@svgr/webpack": "^5.5.0", "clsx": "^1.2.1", "docusaurus-plugin-sass": "^0.2.5", diff --git a/packages/circuits/package.json b/packages/circuits/package.json index 9deff82a7..eb07fad12 100644 --- a/packages/circuits/package.json +++ b/packages/circuits/package.json @@ -1,6 +1,6 @@ { "name": "@semaphore-protocol/circuits", - "version": "4.13.0", + "version": "4.13.1", "description": "Semaphore Circom circuits to generate zero-knowledge proofs.", "license": "MIT", "files": [ diff --git a/packages/cli-template-contracts-foundry/package.json b/packages/cli-template-contracts-foundry/package.json index 7fac9803c..1e78533be 100644 --- a/packages/cli-template-contracts-foundry/package.json +++ b/packages/cli-template-contracts-foundry/package.json @@ -1,10 +1,10 @@ { "name": "@semaphore-protocol/cli-template-contracts-foundry", - "version": "4.13.0", + "version": "4.13.1", "description": "Semaphore Foundry template.", "license": "Unlicense", "devDependencies": { - "@semaphore-protocol/contracts": "4.13.0", + "@semaphore-protocol/contracts": "4.13.1", "@zk-kit/lean-imt.sol": "2.0.1", "forge-std": "github:foundry-rs/forge-std#v1.9.4", "poseidon-solidity": "0.0.5", diff --git a/packages/cli-template-contracts-hardhat/package.json b/packages/cli-template-contracts-hardhat/package.json index a868113fd..d85670a28 100644 --- a/packages/cli-template-contracts-hardhat/package.json +++ b/packages/cli-template-contracts-hardhat/package.json @@ -1,6 +1,6 @@ { "name": "@semaphore-protocol/cli-template-contracts-hardhat", - "version": "4.13.0", + "version": "4.13.1", "description": "Semaphore Hardhat template.", "license": "Unlicense", "files": [ @@ -42,9 +42,9 @@ "@nomicfoundation/hardhat-network-helpers": "^1.0.0", "@nomicfoundation/hardhat-toolbox": "^4.0.0", "@nomicfoundation/hardhat-verify": "^2.0.0", - "@semaphore-protocol/core": "4.13.0", - "@semaphore-protocol/hardhat": "4.13.0", - "@semaphore-protocol/utils": "4.13.0", + "@semaphore-protocol/core": "4.13.1", + "@semaphore-protocol/hardhat": "4.13.1", + "@semaphore-protocol/utils": "4.13.1", "@typechain/ethers-v6": "^0.5.0", "@typechain/hardhat": "^9.0.0", "@types/chai": "^4.2.0", @@ -72,7 +72,7 @@ "typescript": "^5.3.3" }, "dependencies": { - "@semaphore-protocol/contracts": "4.13.0" + "@semaphore-protocol/contracts": "4.13.1" }, "packageManager": "yarn@4.1.0" } diff --git a/packages/cli-template-monorepo-ethers/apps/contracts/package.json b/packages/cli-template-monorepo-ethers/apps/contracts/package.json index e22d36809..31764d477 100644 --- a/packages/cli-template-monorepo-ethers/apps/contracts/package.json +++ b/packages/cli-template-monorepo-ethers/apps/contracts/package.json @@ -20,9 +20,9 @@ "@nomicfoundation/hardhat-network-helpers": "^1.0.0", "@nomicfoundation/hardhat-toolbox": "^4.0.0", "@nomicfoundation/hardhat-verify": "^2.0.0", - "@semaphore-protocol/core": "4.13.0", - "@semaphore-protocol/hardhat": "4.13.0", - "@semaphore-protocol/utils": "4.13.0", + "@semaphore-protocol/core": "4.13.1", + "@semaphore-protocol/hardhat": "4.13.1", + "@semaphore-protocol/utils": "4.13.1", "@typechain/ethers-v6": "^0.5.0", "@typechain/hardhat": "^9.0.0", "@types/chai": "^4.2.0", @@ -50,7 +50,7 @@ "typescript": "^5.3.3" }, "dependencies": { - "@semaphore-protocol/contracts": "4.13.0" + "@semaphore-protocol/contracts": "4.13.1" }, "packageManager": "yarn@4.1.0" } diff --git a/packages/cli-template-monorepo-ethers/apps/web-app/package.json b/packages/cli-template-monorepo-ethers/apps/web-app/package.json index 7f8582290..5ba6a6e70 100644 --- a/packages/cli-template-monorepo-ethers/apps/web-app/package.json +++ b/packages/cli-template-monorepo-ethers/apps/web-app/package.json @@ -9,9 +9,9 @@ "lint": "next lint" }, "dependencies": { - "@semaphore-protocol/core": "4.13.0", - "@semaphore-protocol/data": "4.13.0", - "@semaphore-protocol/utils": "4.13.0", + "@semaphore-protocol/core": "4.13.1", + "@semaphore-protocol/data": "4.13.1", + "@semaphore-protocol/utils": "4.13.1", "ethers": "^6.13.4", "next": "14.1.0", "next-pwa": "^5.6.0", diff --git a/packages/cli-template-monorepo-ethers/package.json b/packages/cli-template-monorepo-ethers/package.json index 4098ad363..f8b26bf1f 100644 --- a/packages/cli-template-monorepo-ethers/package.json +++ b/packages/cli-template-monorepo-ethers/package.json @@ -1,6 +1,6 @@ { "name": "@semaphore-protocol/cli-template-monorepo-ethers", - "version": "4.13.0", + "version": "4.13.1", "description": "Semaphore Hardhat + Next.js + SemaphoreEthers template.", "license": "Unlicense", "files": [ diff --git a/packages/cli-template-monorepo-subgraph/apps/contracts/package.json b/packages/cli-template-monorepo-subgraph/apps/contracts/package.json index 2472d398e..84a83f2bc 100644 --- a/packages/cli-template-monorepo-subgraph/apps/contracts/package.json +++ b/packages/cli-template-monorepo-subgraph/apps/contracts/package.json @@ -20,9 +20,9 @@ "@nomicfoundation/hardhat-network-helpers": "^1.0.0", "@nomicfoundation/hardhat-toolbox": "^4.0.0", "@nomicfoundation/hardhat-verify": "^2.0.0", - "@semaphore-protocol/core": "4.13.0", - "@semaphore-protocol/hardhat": "4.13.0", - "@semaphore-protocol/utils": "4.13.0", + "@semaphore-protocol/core": "4.13.1", + "@semaphore-protocol/hardhat": "4.13.1", + "@semaphore-protocol/utils": "4.13.1", "@typechain/ethers-v6": "^0.5.0", "@typechain/hardhat": "^9.0.0", "@types/chai": "^4.2.0", @@ -50,7 +50,7 @@ "typescript": "^5.3.3" }, "dependencies": { - "@semaphore-protocol/contracts": "4.13.0" + "@semaphore-protocol/contracts": "4.13.1" }, "packageManager": "yarn@4.1.0" } diff --git a/packages/cli-template-monorepo-subgraph/apps/web-app/package.json b/packages/cli-template-monorepo-subgraph/apps/web-app/package.json index ab0aa41f5..a6c637bba 100644 --- a/packages/cli-template-monorepo-subgraph/apps/web-app/package.json +++ b/packages/cli-template-monorepo-subgraph/apps/web-app/package.json @@ -9,9 +9,9 @@ "lint": "next lint" }, "dependencies": { - "@semaphore-protocol/core": "4.13.0", - "@semaphore-protocol/data": "4.13.0", - "@semaphore-protocol/utils": "4.13.0", + "@semaphore-protocol/core": "4.13.1", + "@semaphore-protocol/data": "4.13.1", + "@semaphore-protocol/utils": "4.13.1", "ethers": "^6.13.4", "next": "14.1.0", "next-pwa": "^5.6.0", diff --git a/packages/cli-template-monorepo-subgraph/package.json b/packages/cli-template-monorepo-subgraph/package.json index 0223905bd..3d92f9281 100644 --- a/packages/cli-template-monorepo-subgraph/package.json +++ b/packages/cli-template-monorepo-subgraph/package.json @@ -1,6 +1,6 @@ { "name": "@semaphore-protocol/cli-template-monorepo-subgraph", - "version": "4.13.0", + "version": "4.13.1", "description": "Semaphore Hardhat + Next.js + SemaphoreSubgraph template.", "license": "Unlicense", "files": [ diff --git a/packages/cli/package.json b/packages/cli/package.json index 46440318c..3d21abcc2 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,7 +1,7 @@ { "name": "@semaphore-protocol/cli", "type": "module", - "version": "4.13.0", + "version": "4.13.1", "description": "A command line tool to set up your Semaphore project and get group data.", "license": "MIT", "bin": { @@ -41,8 +41,8 @@ "rollup-plugin-cleanup": "^3.2.1" }, "dependencies": { - "@semaphore-protocol/data": "4.13.0", - "@semaphore-protocol/utils": "4.13.0", + "@semaphore-protocol/data": "4.13.1", + "@semaphore-protocol/utils": "4.13.1", "axios": "^1.6.7", "boxen": "^7.1.1", "chalk": "^5.3.0", diff --git a/packages/contracts/contracts/package.json b/packages/contracts/contracts/package.json index afb681cb4..798d067d6 100644 --- a/packages/contracts/contracts/package.json +++ b/packages/contracts/contracts/package.json @@ -1,6 +1,6 @@ { "name": "@semaphore-protocol/contracts", - "version": "4.13.0", + "version": "4.13.1", "description": "Semaphore contracts to manage groups and broadcast anonymous signals.", "license": "MIT", "files": [ diff --git a/packages/core/package.json b/packages/core/package.json index aa526af6f..dc8a52267 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@semaphore-protocol/core", - "version": "4.13.0", + "version": "4.13.1", "description": "Core library for the essential Semaphore features.", "type": "module", "license": "MIT", @@ -42,8 +42,8 @@ "access": "public" }, "dependencies": { - "@semaphore-protocol/group": "4.13.0", - "@semaphore-protocol/identity": "4.13.0", - "@semaphore-protocol/proof": "4.13.0" + "@semaphore-protocol/group": "4.13.1", + "@semaphore-protocol/identity": "4.13.1", + "@semaphore-protocol/proof": "4.13.1" } } diff --git a/packages/data/package.json b/packages/data/package.json index 4b0e5416f..d29a9ceb5 100644 --- a/packages/data/package.json +++ b/packages/data/package.json @@ -1,6 +1,6 @@ { "name": "@semaphore-protocol/data", - "version": "4.13.0", + "version": "4.13.1", "description": "A library for querying Semaphore smart contract.", "type": "module", "license": "MIT", @@ -37,7 +37,7 @@ "rollup-plugin-cleanup": "^3.2.1" }, "dependencies": { - "@semaphore-protocol/utils": "4.13.0", + "@semaphore-protocol/utils": "4.13.1", "@zk-kit/utils": "1.3.0", "axios": "1.6.6", "ethers": "6.13.4", diff --git a/packages/group/package.json b/packages/group/package.json index abf28138a..75a6f6ddc 100644 --- a/packages/group/package.json +++ b/packages/group/package.json @@ -1,6 +1,6 @@ { "name": "@semaphore-protocol/group", - "version": "4.13.0", + "version": "4.13.1", "description": "A library to create and manage Semaphore groups.", "type": "module", "license": "MIT", diff --git a/packages/hardhat/package.json b/packages/hardhat/package.json index dfc3f2f0f..0dcf87954 100644 --- a/packages/hardhat/package.json +++ b/packages/hardhat/package.json @@ -1,6 +1,6 @@ { "name": "@semaphore-protocol/hardhat", - "version": "4.13.0", + "version": "4.13.1", "description": "A Hardhat plugin to deploy Semaphore contracts.", "type": "module", "license": "MIT", @@ -41,7 +41,7 @@ }, "dependencies": { "@nomicfoundation/hardhat-ethers": "^3.0.0", - "@semaphore-protocol/contracts": "4.13.0", + "@semaphore-protocol/contracts": "4.13.1", "ethers": "^6.13.4", "hardhat-dependency-compiler": "^1.1.3" } diff --git a/packages/identity/package.json b/packages/identity/package.json index 5f2cadae0..a353ae23e 100644 --- a/packages/identity/package.json +++ b/packages/identity/package.json @@ -1,6 +1,6 @@ { "name": "@semaphore-protocol/identity", - "version": "4.13.0", + "version": "4.13.1", "description": "A library to create Semaphore identities.", "type": "module", "license": "MIT", diff --git a/packages/proof/package.json b/packages/proof/package.json index 765db10cd..d43a4e1d9 100644 --- a/packages/proof/package.json +++ b/packages/proof/package.json @@ -1,6 +1,6 @@ { "name": "@semaphore-protocol/proof", - "version": "4.13.0", + "version": "4.13.1", "description": "A library to generate and verify Semaphore proofs.", "type": "module", "license": "MIT", @@ -47,11 +47,11 @@ "rollup-plugin-cleanup": "^3.2.1" }, "peerDependencies": { - "@semaphore-protocol/group": "4.13.0", - "@semaphore-protocol/identity": "4.13.0" + "@semaphore-protocol/group": "4.13.1", + "@semaphore-protocol/identity": "4.13.1" }, "dependencies": { - "@semaphore-protocol/utils": "4.13.0", + "@semaphore-protocol/utils": "4.13.1", "@zk-kit/artifacts": "2.0.1", "@zk-kit/utils": "1.3.0", "ethers": "6.13.4", diff --git a/packages/utils/package.json b/packages/utils/package.json index 3e6deeca5..100fe8b8a 100644 --- a/packages/utils/package.json +++ b/packages/utils/package.json @@ -1,6 +1,6 @@ { "name": "@semaphore-protocol/utils", - "version": "4.13.0", + "version": "4.13.1", "description": "A library to provide utility functions to the other Semaphore packages.", "type": "module", "license": "MIT", diff --git a/yarn.lock b/yarn.lock index a3f856d06..83e0c3688 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7613,7 +7613,7 @@ __metadata: version: 0.0.0-use.local resolution: "@semaphore-protocol/cli-template-contracts-foundry@workspace:packages/cli-template-contracts-foundry" dependencies: - "@semaphore-protocol/contracts": "npm:4.13.0" + "@semaphore-protocol/contracts": "npm:4.13.1" "@zk-kit/lean-imt.sol": "npm:2.0.1" forge-std: "github:foundry-rs/forge-std#v1.9.4" poseidon-solidity: "npm:0.0.5" @@ -7633,10 +7633,10 @@ __metadata: "@nomicfoundation/hardhat-network-helpers": "npm:^1.0.0" "@nomicfoundation/hardhat-toolbox": "npm:^4.0.0" "@nomicfoundation/hardhat-verify": "npm:^2.0.0" - "@semaphore-protocol/contracts": "npm:4.13.0" - "@semaphore-protocol/core": "npm:4.13.0" - "@semaphore-protocol/hardhat": "npm:4.13.0" - "@semaphore-protocol/utils": "npm:4.13.0" + "@semaphore-protocol/contracts": "npm:4.13.1" + "@semaphore-protocol/core": "npm:4.13.1" + "@semaphore-protocol/hardhat": "npm:4.13.1" + "@semaphore-protocol/utils": "npm:4.13.1" "@typechain/ethers-v6": "npm:^0.5.0" "@typechain/hardhat": "npm:^9.0.0" "@types/chai": "npm:^4.2.0" @@ -7686,8 +7686,8 @@ __metadata: resolution: "@semaphore-protocol/cli@workspace:packages/cli" dependencies: "@rollup/plugin-typescript": "npm:^11.1.6" - "@semaphore-protocol/data": "npm:4.13.0" - "@semaphore-protocol/utils": "npm:4.13.0" + "@semaphore-protocol/data": "npm:4.13.1" + "@semaphore-protocol/utils": "npm:4.13.1" "@types/figlet": "npm:^1.5.8" "@types/inquirer": "npm:^9.0.7" "@types/pacote": "npm:^11.1.8" @@ -7711,7 +7711,7 @@ __metadata: languageName: unknown linkType: soft -"@semaphore-protocol/contracts@npm:4.13.0, @semaphore-protocol/contracts@workspace:packages/contracts/contracts": +"@semaphore-protocol/contracts@npm:4.13.1, @semaphore-protocol/contracts@workspace:packages/contracts/contracts": version: 0.0.0-use.local resolution: "@semaphore-protocol/contracts@workspace:packages/contracts/contracts" dependencies: @@ -7719,23 +7719,23 @@ __metadata: languageName: unknown linkType: soft -"@semaphore-protocol/core@npm:4.13.0, @semaphore-protocol/core@workspace:^, @semaphore-protocol/core@workspace:packages/core": +"@semaphore-protocol/core@npm:4.13.1, @semaphore-protocol/core@workspace:^, @semaphore-protocol/core@workspace:packages/core": version: 0.0.0-use.local resolution: "@semaphore-protocol/core@workspace:packages/core" dependencies: - "@semaphore-protocol/group": "npm:4.13.0" - "@semaphore-protocol/identity": "npm:4.13.0" - "@semaphore-protocol/proof": "npm:4.13.0" + "@semaphore-protocol/group": "npm:4.13.1" + "@semaphore-protocol/identity": "npm:4.13.1" + "@semaphore-protocol/proof": "npm:4.13.1" languageName: unknown linkType: soft -"@semaphore-protocol/data@npm:4.13.0, @semaphore-protocol/data@workspace:packages/data": +"@semaphore-protocol/data@npm:4.13.1, @semaphore-protocol/data@workspace:packages/data": version: 0.0.0-use.local resolution: "@semaphore-protocol/data@workspace:packages/data" dependencies: "@rollup/plugin-json": "npm:^6.1.0" "@rollup/plugin-typescript": "npm:^11.1.6" - "@semaphore-protocol/utils": "npm:4.13.0" + "@semaphore-protocol/utils": "npm:4.13.1" "@zk-kit/utils": "npm:1.3.0" axios: "npm:1.6.6" ethers: "npm:6.13.4" @@ -7746,7 +7746,7 @@ __metadata: languageName: unknown linkType: soft -"@semaphore-protocol/group@npm:4.13.0, @semaphore-protocol/group@workspace:packages/group": +"@semaphore-protocol/group@npm:4.13.1, @semaphore-protocol/group@workspace:packages/group": version: 0.0.0-use.local resolution: "@semaphore-protocol/group@workspace:packages/group" dependencies: @@ -7760,13 +7760,13 @@ __metadata: languageName: unknown linkType: soft -"@semaphore-protocol/hardhat@npm:4.13.0, @semaphore-protocol/hardhat@workspace:packages/hardhat": +"@semaphore-protocol/hardhat@npm:4.13.1, @semaphore-protocol/hardhat@workspace:packages/hardhat": version: 0.0.0-use.local resolution: "@semaphore-protocol/hardhat@workspace:packages/hardhat" dependencies: "@nomicfoundation/hardhat-ethers": "npm:^3.0.0" "@rollup/plugin-typescript": "npm:^11.1.6" - "@semaphore-protocol/contracts": "npm:4.13.0" + "@semaphore-protocol/contracts": "npm:4.13.1" ethers: "npm:^6.13.4" hardhat: "npm:^2.19.4" hardhat-dependency-compiler: "npm:^1.1.3" @@ -7778,7 +7778,7 @@ __metadata: languageName: unknown linkType: soft -"@semaphore-protocol/identity@npm:4.13.0, @semaphore-protocol/identity@workspace:packages/identity": +"@semaphore-protocol/identity@npm:4.13.1, @semaphore-protocol/identity@workspace:packages/identity": version: 0.0.0-use.local resolution: "@semaphore-protocol/identity@workspace:packages/identity" dependencies: @@ -7794,14 +7794,14 @@ __metadata: languageName: unknown linkType: soft -"@semaphore-protocol/proof@npm:4.13.0, @semaphore-protocol/proof@workspace:packages/proof": +"@semaphore-protocol/proof@npm:4.13.1, @semaphore-protocol/proof@workspace:packages/proof": version: 0.0.0-use.local resolution: "@semaphore-protocol/proof@workspace:packages/proof" dependencies: "@rollup/plugin-alias": "npm:^5.1.0" "@rollup/plugin-json": "npm:^6.1.0" "@rollup/plugin-typescript": "npm:^11.1.6" - "@semaphore-protocol/utils": "npm:4.13.0" + "@semaphore-protocol/utils": "npm:4.13.1" "@types/snarkjs": "npm:^0" "@zk-kit/artifacts": "npm:2.0.1" "@zk-kit/utils": "npm:1.3.0" @@ -7811,12 +7811,12 @@ __metadata: rollup-plugin-cleanup: "npm:^3.2.1" snarkjs: "npm:0.7.5" peerDependencies: - "@semaphore-protocol/group": 4.13.0 - "@semaphore-protocol/identity": 4.13.0 + "@semaphore-protocol/group": 4.13.1 + "@semaphore-protocol/identity": 4.13.1 languageName: unknown linkType: soft -"@semaphore-protocol/utils@npm:4.13.0, @semaphore-protocol/utils@workspace:packages/utils": +"@semaphore-protocol/utils@npm:4.13.1, @semaphore-protocol/utils@workspace:packages/utils": version: 0.0.0-use.local resolution: "@semaphore-protocol/utils@workspace:packages/utils" dependencies: @@ -21721,10 +21721,10 @@ __metadata: "@nomicfoundation/hardhat-network-helpers": "npm:^1.0.0" "@nomicfoundation/hardhat-toolbox": "npm:^4.0.0" "@nomicfoundation/hardhat-verify": "npm:^2.0.0" - "@semaphore-protocol/contracts": "npm:4.13.0" - "@semaphore-protocol/core": "npm:4.13.0" - "@semaphore-protocol/hardhat": "npm:4.13.0" - "@semaphore-protocol/utils": "npm:4.13.0" + "@semaphore-protocol/contracts": "npm:4.13.1" + "@semaphore-protocol/core": "npm:4.13.1" + "@semaphore-protocol/hardhat": "npm:4.13.1" + "@semaphore-protocol/utils": "npm:4.13.1" "@typechain/ethers-v6": "npm:^0.5.0" "@typechain/hardhat": "npm:^9.0.0" "@types/chai": "npm:^4.2.0" @@ -21757,9 +21757,9 @@ __metadata: version: 0.0.0-use.local resolution: "monorepo-ethers-web-app@workspace:packages/cli-template-monorepo-ethers/apps/web-app" dependencies: - "@semaphore-protocol/core": "npm:4.13.0" - "@semaphore-protocol/data": "npm:4.13.0" - "@semaphore-protocol/utils": "npm:4.13.0" + "@semaphore-protocol/core": "npm:4.13.1" + "@semaphore-protocol/data": "npm:4.13.1" + "@semaphore-protocol/utils": "npm:4.13.1" "@types/node": "npm:^20" "@types/react": "npm:^18" "@types/react-dom": "npm:^18" @@ -21784,10 +21784,10 @@ __metadata: "@nomicfoundation/hardhat-network-helpers": "npm:^1.0.0" "@nomicfoundation/hardhat-toolbox": "npm:^4.0.0" "@nomicfoundation/hardhat-verify": "npm:^2.0.0" - "@semaphore-protocol/contracts": "npm:4.13.0" - "@semaphore-protocol/core": "npm:4.13.0" - "@semaphore-protocol/hardhat": "npm:4.13.0" - "@semaphore-protocol/utils": "npm:4.13.0" + "@semaphore-protocol/contracts": "npm:4.13.1" + "@semaphore-protocol/core": "npm:4.13.1" + "@semaphore-protocol/hardhat": "npm:4.13.1" + "@semaphore-protocol/utils": "npm:4.13.1" "@typechain/ethers-v6": "npm:^0.5.0" "@typechain/hardhat": "npm:^9.0.0" "@types/chai": "npm:^4.2.0" @@ -21820,9 +21820,9 @@ __metadata: version: 0.0.0-use.local resolution: "monorepo-subgraph-web-app@workspace:packages/cli-template-monorepo-subgraph/apps/web-app" dependencies: - "@semaphore-protocol/core": "npm:4.13.0" - "@semaphore-protocol/data": "npm:4.13.0" - "@semaphore-protocol/utils": "npm:4.13.0" + "@semaphore-protocol/core": "npm:4.13.1" + "@semaphore-protocol/data": "npm:4.13.1" + "@semaphore-protocol/utils": "npm:4.13.1" "@types/node": "npm:^20" "@types/react": "npm:^18" "@types/react-dom": "npm:^18" @@ -26328,7 +26328,7 @@ __metadata: "@docusaurus/preset-classic": "npm:3.5.2" "@docusaurus/tsconfig": "npm:3.5.2" "@mdx-js/react": "npm:^3.0.0" - "@semaphore-protocol/utils": "npm:4.13.0" + "@semaphore-protocol/utils": "npm:4.13.1" "@svgr/webpack": "npm:^5.5.0" "@types/react": "npm:^18.2.29" clsx: "npm:^1.2.1"