gitextract_xfisnfb9/ ├── .github/ │ ├── PULL_REQUEST_TEMPLATE/ │ │ └── circuit_template.md │ └── workflows/ │ ├── circuit.yml │ ├── contracts-domain.yml │ └── contracts-ramp.yml ├── .gitignore ├── .prettierignore ├── FUNDING.json ├── LICENSE ├── README.md ├── circuits-circom/ │ ├── README.md │ ├── circuits/ │ │ ├── common/ │ │ │ ├── .yarn/ │ │ │ │ └── releases/ │ │ │ │ └── yarn-3.6.3.cjs │ │ │ ├── .yarnrc.yml │ │ │ ├── package.json │ │ │ ├── regexes/ │ │ │ │ ├── body_hash_regex.circom │ │ │ │ ├── from_regex.circom │ │ │ │ ├── to_regex.circom │ │ │ │ └── to_regex.json │ │ │ ├── test/ │ │ │ │ ├── mocks/ │ │ │ │ │ ├── test_body_hash_regex.circom │ │ │ │ │ ├── test_from_regex.circom │ │ │ │ │ └── test_to_regex.circom │ │ │ │ └── regexes/ │ │ │ │ ├── body_hash.spec.ts │ │ │ │ ├── from_regex.spec.ts │ │ │ │ └── to_regex.spec.ts │ │ │ └── tsconfig.json │ │ ├── common-v2/ │ │ │ ├── .yarn/ │ │ │ │ └── releases/ │ │ │ │ └── yarn-3.6.3.cjs │ │ │ ├── .yarnrc.yml │ │ │ ├── body_suffix_hasher.circom │ │ │ ├── package.json │ │ │ ├── regexes/ │ │ │ │ ├── body_hash_regex_v2.circom │ │ │ │ ├── body_hash_regex_v2.json │ │ │ │ ├── from_regex_v2.circom │ │ │ │ ├── from_regex_v2.json │ │ │ │ ├── to_regex_v2.circom │ │ │ │ └── to_regex_v2.json │ │ │ ├── test/ │ │ │ │ ├── body_suffix_hasher.spec.ts │ │ │ │ ├── mocks/ │ │ │ │ │ ├── test_body_hash_regex_v2.circom │ │ │ │ │ ├── test_body_suffix_hasher.circom │ │ │ │ │ ├── test_from_regex_v2.circom │ │ │ │ │ └── test_to_regex_v2.circom │ │ │ │ └── regexes/ │ │ │ │ ├── body_hash_regex_v2.spec.ts │ │ │ │ ├── from_regex_v2.spec.ts │ │ │ │ └── to_regex_v2.spec.ts │ │ │ └── tsconfig.json │ │ ├── garanti/ │ │ │ ├── .yarn/ │ │ │ │ └── releases/ │ │ │ │ └── yarn-3.6.3.cjs │ │ │ ├── .yarnrc.yml │ │ │ ├── contracts/ │ │ │ │ ├── garanti_body_suffix_hasher_verifier.sol │ │ │ │ ├── garanti_registration_verifier.sol │ │ │ │ └── garanti_send_verifier.sol │ │ │ ├── emls/ │ │ │ │ └── .placeholder │ │ │ ├── garanti_body_suffix_hasher.circom │ │ │ ├── garanti_registration.circom │ │ │ ├── garanti_send.circom │ │ │ ├── inputs/ │ │ │ │ └── .placeholder │ │ │ ├── package.json │ │ │ ├── regexes/ │ │ │ │ ├── garanti_payer_details.circom │ │ │ │ ├── garanti_payer_details.json │ │ │ │ ├── garanti_payment_details.circom │ │ │ │ ├── garanti_payment_details.json │ │ │ │ ├── garanti_subject.circom │ │ │ │ ├── garanti_subject.json │ │ │ │ ├── garanti_timestamp.circom │ │ │ │ └── garanti_timestamp.json │ │ │ ├── test/ │ │ │ │ ├── garanti_registration.spec.ts │ │ │ │ ├── garanti_send.spec.ts │ │ │ │ ├── mocks/ │ │ │ │ │ ├── test_garanti_payer_details.circom │ │ │ │ │ ├── test_garanti_payment_details.circom │ │ │ │ │ ├── test_garanti_subject.circom │ │ │ │ │ └── test_garanti_timestamp.circom │ │ │ │ └── regexes/ │ │ │ │ ├── garanti_payer_details.spec.ts │ │ │ │ ├── garanti_payment_details.spec.ts │ │ │ │ ├── garanti_subject.spec.ts │ │ │ │ └── garanti_timestamp.spec.ts │ │ │ └── tsconfig.json │ │ ├── hdfc/ │ │ │ ├── .yarn/ │ │ │ │ └── releases/ │ │ │ │ └── yarn-3.6.3.cjs │ │ │ ├── .yarnrc.yml │ │ │ ├── contracts/ │ │ │ │ ├── hdfc_registration_verifier.sol │ │ │ │ └── hdfc_send_verifier.sol │ │ │ ├── emls/ │ │ │ │ └── .placeholder │ │ │ ├── hdfc_registration.circom │ │ │ ├── hdfc_send.circom │ │ │ ├── helpers/ │ │ │ │ └── hdfc_helpers.circom │ │ │ ├── inputs/ │ │ │ │ └── .placeholder │ │ │ ├── package.json │ │ │ ├── regexes/ │ │ │ │ ├── hdfc_accnum.circom │ │ │ │ ├── hdfc_accnum.json │ │ │ │ ├── hdfc_amount.circom │ │ │ │ ├── hdfc_amount.json │ │ │ │ ├── hdfc_date.circom │ │ │ │ ├── hdfc_date.json │ │ │ │ ├── hdfc_payee_id.circom │ │ │ │ ├── hdfc_payee_id.json │ │ │ │ ├── hdfc_payment_id.circom │ │ │ │ ├── hdfc_payment_id.json │ │ │ │ ├── hdfc_upi_subject.circom │ │ │ │ └── hdfc_upi_subject.json │ │ │ ├── test/ │ │ │ │ ├── hdfc_registration.spec.ts │ │ │ │ ├── hdfc_send.spec.ts │ │ │ │ ├── mocks/ │ │ │ │ │ ├── test_hdfc_accnum.circom │ │ │ │ │ ├── test_hdfc_amount.circom │ │ │ │ │ ├── test_hdfc_date.circom │ │ │ │ │ ├── test_hdfc_payee_id.circom │ │ │ │ │ ├── test_hdfc_payment_id.circom │ │ │ │ │ └── test_hdfc_upi_subject.circom │ │ │ │ └── regexes/ │ │ │ │ ├── hdfc_accnum.spec.ts │ │ │ │ ├── hdfc_amount.spec.ts │ │ │ │ ├── hdfc_date.spec.ts │ │ │ │ ├── hdfc_payee_id.spec.ts │ │ │ │ ├── hdfc_payment_id.spec.ts │ │ │ │ └── hdfc_upi_subject.spec.ts │ │ │ └── tsconfig.json │ │ ├── namecheap/ │ │ │ ├── .yarn/ │ │ │ │ └── releases/ │ │ │ │ └── yarn-3.6.3.cjs │ │ │ ├── .yarnrc.yml │ │ │ ├── contracts/ │ │ │ │ └── namecheap_push_verifier.sol │ │ │ ├── emls/ │ │ │ │ └── .placeholder │ │ │ ├── inputs/ │ │ │ │ └── .placeholder │ │ │ ├── namecheap_push.circom │ │ │ ├── package.json │ │ │ ├── regexes/ │ │ │ │ ├── namecheap_subject.circom │ │ │ │ ├── namecheap_subject.json │ │ │ │ ├── namecheap_transfer_details.circom │ │ │ │ └── namecheap_transfer_details.json │ │ │ ├── test/ │ │ │ │ ├── mocks/ │ │ │ │ │ ├── test_namecheap_date.circom │ │ │ │ │ ├── test_namecheap_subject.circom │ │ │ │ │ └── test_namecheap_transfer_details.circom │ │ │ │ ├── namecheap_push.spec.ts │ │ │ │ └── regexes/ │ │ │ │ ├── namecheap_subject.spec.ts │ │ │ │ └── namecheap_transfer_details.spec.ts │ │ │ └── tsconfig.json │ │ ├── paylah/ │ │ │ ├── .yarn/ │ │ │ │ └── releases/ │ │ │ │ └── yarn-3.6.3.cjs │ │ │ ├── .yarnrc.yml │ │ │ ├── contracts/ │ │ │ │ ├── paylah_registration_verifier.sol │ │ │ │ └── paylah_send_verifier.sol │ │ │ ├── emls/ │ │ │ │ └── .placeholder │ │ │ ├── inputs/ │ │ │ │ └── .placeholder │ │ │ ├── package.json │ │ │ ├── paylah_registration.circom │ │ │ ├── paylah_send.circom │ │ │ ├── regexes/ │ │ │ │ ├── paylah_payer_mobile_num.circom │ │ │ │ ├── paylah_payer_mobile_num.json │ │ │ │ ├── paylah_payment_details.circom │ │ │ │ ├── paylah_payment_details.json │ │ │ │ ├── paylah_payment_id.circom │ │ │ │ ├── paylah_payment_id.json │ │ │ │ ├── paylah_subject.circom │ │ │ │ ├── paylah_subject.json │ │ │ │ ├── paylah_timestamp.circom │ │ │ │ └── paylah_timestamp.json │ │ │ ├── test/ │ │ │ │ ├── mocks/ │ │ │ │ │ ├── test_paylah_payer_mobile_num.circom │ │ │ │ │ ├── test_paylah_payment_details.circom │ │ │ │ │ ├── test_paylah_payment_id.circom │ │ │ │ │ ├── test_paylah_subject.circom │ │ │ │ │ └── test_paylah_timestamp.circom │ │ │ │ ├── paylah_registration.spec.ts │ │ │ │ ├── paylah_send.spec.ts │ │ │ │ └── regexes/ │ │ │ │ ├── paylah_payer_mobile_num.spec.ts │ │ │ │ ├── paylah_payment_details.spec.ts │ │ │ │ ├── paylah_payment_id.spec.ts │ │ │ │ ├── paylah_subject.spec.ts │ │ │ │ └── paylah_timestamp.spec.ts │ │ │ └── tsconfig.json │ │ ├── stubs/ │ │ │ └── email-verifier.circom │ │ ├── utils/ │ │ │ ├── ceil.circom │ │ │ ├── email_nullifier.circom │ │ │ ├── hash_sign_gen_rand.circom │ │ │ └── test-utils/ │ │ │ ├── index.ts │ │ │ └── utils.ts │ │ └── venmo/ │ │ ├── .yarn/ │ │ │ └── releases/ │ │ │ └── yarn-3.6.3.cjs │ │ ├── .yarnrc.yml │ │ ├── contracts/ │ │ │ ├── venmo_registration_verifier.sol │ │ │ ├── venmo_send_verifier.sol │ │ │ ├── venmo_send_verifier_v1.sol │ │ │ └── venmo_send_verifier_v2.sol │ │ ├── emls/ │ │ │ └── .placeholder │ │ ├── inputs/ │ │ │ └── .placeholder │ │ ├── package.json │ │ ├── regexes/ │ │ │ ├── venmo_actor_id.circom │ │ │ ├── venmo_actor_id.json │ │ │ ├── venmo_p2p_check.circom │ │ │ ├── venmo_p2p_check.json │ │ │ ├── venmo_send_amount.circom │ │ │ ├── venmo_send_amount.json │ │ │ ├── venmo_send_id.circom │ │ │ ├── venmo_send_id.json │ │ │ └── venmo_timestamp.circom │ │ ├── test/ │ │ │ ├── mocks/ │ │ │ │ ├── test_venmo_actor_id.circom │ │ │ │ ├── test_venmo_p2p_check.circom │ │ │ │ ├── test_venmo_send_amount.circom │ │ │ │ ├── test_venmo_send_id.circom │ │ │ │ └── test_venmo_timestamp.circom │ │ │ ├── regexes/ │ │ │ │ ├── venmo_actor_id.spec.ts │ │ │ │ ├── venmo_p2p_check.spec.ts │ │ │ │ ├── venmo_send_amount.spec.ts │ │ │ │ ├── venmo_send_id.spec.ts │ │ │ │ └── venmo_timestamp.spec.ts │ │ │ ├── venmo_registration.spec.ts │ │ │ └── venmo_send.spec.ts │ │ ├── tsconfig.json │ │ ├── utils/ │ │ │ └── extract.circom │ │ ├── venmo_registration.circom │ │ └── venmo_send.circom │ ├── package/ │ │ ├── .npmignore │ │ ├── .yarn/ │ │ │ └── releases/ │ │ │ └── yarn-3.6.3.cjs │ │ ├── .yarnrc.yml │ │ ├── generate_input.ts │ │ ├── package.json │ │ ├── preprocess.ts │ │ ├── test/ │ │ │ └── preprocess_input.spec.ts │ │ └── tsconfig.json │ ├── scripts/ │ │ ├── 10_run_all.sh │ │ ├── 1_compile.sh │ │ ├── 2_gen_wtns.sh │ │ ├── 3_gen_zkey_unsafe.sh │ │ ├── 4_gen_vkey.sh │ │ ├── 5_gen_proof.sh │ │ ├── 6_gen_proof_rapidsnark.sh │ │ ├── 7_upload_to_s3.sh │ │ ├── 8_gen_sol_verifier.sh │ │ ├── 9_gen_sol_calldata.sh │ │ ├── ceremony/ │ │ │ ├── 1_setup_ceremony.sh │ │ │ ├── 2_contribute_ceremony.sh │ │ │ └── 3_finalize_ceremony.sh │ │ ├── circuit.env.example │ │ ├── deprecated/ │ │ │ ├── 3_gen_both_zkeys.sh │ │ │ ├── 3_gen_chunk_zkey.sh │ │ │ └── 3_gen_chunk_zkey_unsafe.sh │ │ ├── entropy.env.example │ │ └── upload_to_s3.py │ └── tasks/ │ ├── .yarn/ │ │ └── releases/ │ │ └── yarn-3.6.3.cjs │ ├── .yarnrc.yml │ ├── package.json │ └── pubkey_hash.ts ├── client/ │ ├── .yarnrc.yml │ ├── config/ │ │ ├── env.js │ │ ├── getHttpsConfig.js │ │ ├── jest/ │ │ │ ├── babelTransform.js │ │ │ ├── cssTransform.js │ │ │ └── fileTransform.js │ │ ├── modules.js │ │ ├── paths.js │ │ ├── webpack/ │ │ │ └── persistentCache/ │ │ │ └── createEnvironmentHash.js │ │ ├── webpack.config.js │ │ └── webpackDevServer.config.js │ ├── package.json │ ├── public/ │ │ ├── _redirects │ │ ├── index.html │ │ ├── manifest.json │ │ └── robots.txt │ ├── scripts/ │ │ ├── build.js │ │ └── start.js │ ├── src/ │ │ ├── App.css │ │ ├── App.tsx │ │ ├── ErrorBoundary.tsx │ │ ├── __fixtures__/ │ │ │ └── compressed-files/ │ │ │ └── uncompressed-value.txt │ │ ├── assets/ │ │ │ └── fonts/ │ │ │ ├── Graphik-Medium.otf │ │ │ ├── Graphik-Regular.otf │ │ │ └── Graphik-Semibold.otf │ │ ├── components/ │ │ │ ├── Account/ │ │ │ │ ├── AccountDropdown.tsx │ │ │ │ ├── AccountLogin.tsx │ │ │ │ ├── Avatar.tsx │ │ │ │ ├── LoginTypeButton.tsx │ │ │ │ └── ReceiveModal.tsx │ │ │ ├── Deposit/ │ │ │ │ ├── CurrencySelector.tsx │ │ │ │ ├── DepositRow.tsx │ │ │ │ ├── DepositTable.tsx │ │ │ │ ├── Input.tsx │ │ │ │ ├── OffRamperIntentRow.tsx │ │ │ │ ├── OffRamperIntentTable.tsx │ │ │ │ ├── garanti/ │ │ │ │ │ └── NewPosition.tsx │ │ │ │ ├── hdfc/ │ │ │ │ │ └── NewPosition.tsx │ │ │ │ ├── index.tsx │ │ │ │ ├── revolut/ │ │ │ │ │ └── NewPosition.tsx │ │ │ │ └── venmo/ │ │ │ │ └── NewPosition.tsx │ │ │ ├── Landing/ │ │ │ │ └── SwapPreview.tsx │ │ │ ├── Liquidity/ │ │ │ │ ├── DepositsRow.tsx │ │ │ │ ├── DepositsTable.tsx │ │ │ │ └── index.tsx │ │ │ ├── MobileLandingPage.tsx │ │ │ ├── Notary/ │ │ │ │ ├── NotarizationRow.tsx │ │ │ │ ├── NotarizationTable.tsx │ │ │ │ ├── VerificationStepRow.tsx │ │ │ │ ├── VerifyNotarizationForm.tsx │ │ │ │ └── VerifyNotarizationModal.tsx │ │ │ ├── Permissions/ │ │ │ │ ├── NewPermission.tsx │ │ │ │ ├── PermissionRow.tsx │ │ │ │ ├── PermissionTable.tsx │ │ │ │ └── index.tsx │ │ │ ├── ProofGen/ │ │ │ │ ├── MailRow.tsx │ │ │ │ ├── MailTable.tsx │ │ │ │ ├── ProofForm.tsx │ │ │ │ ├── ProofSettings.tsx │ │ │ │ ├── UploadEmail.tsx │ │ │ │ └── validation/ │ │ │ │ ├── garanti.tsx │ │ │ │ ├── hdfc.tsx │ │ │ │ └── venmo.tsx │ │ │ ├── Registration/ │ │ │ │ ├── ReadOnlyInput.tsx │ │ │ │ ├── garanti/ │ │ │ │ │ ├── ExistingRegistration.tsx │ │ │ │ │ └── NewRegistration.tsx │ │ │ │ ├── hdfc/ │ │ │ │ │ ├── ExistingRegistration.tsx │ │ │ │ │ └── NewRegistration.tsx │ │ │ │ ├── index.tsx │ │ │ │ ├── revolut/ │ │ │ │ │ ├── ExistingRegistration.tsx │ │ │ │ │ └── NewRegistration.tsx │ │ │ │ └── venmo/ │ │ │ │ ├── ExistingRegistration.tsx │ │ │ │ └── NewRegistration.tsx │ │ │ ├── SVGIcon/ │ │ │ │ ├── SVGIcon.css │ │ │ │ ├── SVGIcon.tsx │ │ │ │ ├── SVGIconThemed.css │ │ │ │ └── SVGIconThemed.tsx │ │ │ ├── Send/ │ │ │ │ ├── Input.tsx │ │ │ │ ├── NetworkRow.tsx │ │ │ │ ├── NetworkSelector.tsx │ │ │ │ ├── QuoteDrawer.tsx │ │ │ │ ├── QuoteStep.tsx │ │ │ │ ├── TokenRow.tsx │ │ │ │ ├── TokenSelector.tsx │ │ │ │ └── index.tsx │ │ │ ├── Swap/ │ │ │ │ ├── CurrencySelector.tsx │ │ │ │ ├── Input.tsx │ │ │ │ ├── InstructionDrawer.tsx │ │ │ │ ├── InstructionStep.tsx │ │ │ │ ├── OnRamperIntentRow.tsx │ │ │ │ ├── OnRamperIntentTable.tsx │ │ │ │ ├── PaymentRequirementDrawer.tsx │ │ │ │ ├── SettingsDropdown.tsx │ │ │ │ ├── SwapInstructionTitle.tsx │ │ │ │ ├── SwapModal.tsx │ │ │ │ ├── SwapModalMobile.tsx │ │ │ │ ├── TokenSelector.tsx │ │ │ │ ├── garanti/ │ │ │ │ │ └── OnRamp.tsx │ │ │ │ ├── hdfc/ │ │ │ │ │ └── OnRamp.tsx │ │ │ │ ├── index.tsx │ │ │ │ ├── revolut/ │ │ │ │ │ └── OnRamp.tsx │ │ │ │ └── venmo/ │ │ │ │ └── OnRamp.tsx │ │ │ ├── Toggle.tsx │ │ │ ├── Withdraw/ │ │ │ │ ├── LegacyDepositRow.tsx │ │ │ │ ├── LegacyDepositTable.tsx │ │ │ │ └── index.tsx │ │ │ ├── common/ │ │ │ │ ├── AccessoryButton.tsx │ │ │ │ ├── Button.tsx │ │ │ │ ├── Card.tsx │ │ │ │ ├── Checkbox.tsx │ │ │ │ ├── ConnectButton.tsx │ │ │ │ ├── CopyButton.tsx │ │ │ │ ├── DragAndDropTextBox.tsx │ │ │ │ ├── Input.tsx │ │ │ │ ├── LabeledSwitch.tsx │ │ │ │ ├── NumberedStep.tsx │ │ │ │ ├── Popover.tsx │ │ │ │ ├── QuestionHelper.tsx │ │ │ │ ├── ReadOnlyInput.tsx │ │ │ │ ├── SingleLineInput.tsx │ │ │ │ ├── Spinner.tsx │ │ │ │ ├── TextButton.tsx │ │ │ │ ├── Tooltip.tsx │ │ │ │ └── TransactionButton.tsx │ │ │ ├── layouts/ │ │ │ │ ├── BottomNav/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── Column/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── EnvironmentBanner.tsx │ │ │ │ ├── MenuDropdown/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── Row/ │ │ │ │ │ └── index.tsx │ │ │ │ └── TopNav/ │ │ │ │ ├── NavItem.tsx │ │ │ │ └── index.tsx │ │ │ ├── legacy/ │ │ │ │ ├── LabeledTextArea.tsx │ │ │ │ ├── Layout.tsx │ │ │ │ └── StyledLink.tsx │ │ │ └── modals/ │ │ │ ├── ConfirmRelease.tsx │ │ │ ├── CurrencyRow.tsx │ │ │ ├── Integration.tsx │ │ │ ├── Overlay.tsx │ │ │ ├── PlatformIconHelper.tsx │ │ │ ├── PlatformRow.tsx │ │ │ ├── PlatformSelector.tsx │ │ │ ├── RequirementStepRow.tsx │ │ │ ├── ReviewRequirements.tsx │ │ │ ├── ValidateEmail.tsx │ │ │ └── VerificationStepRow.tsx │ │ ├── contexts/ │ │ │ ├── common/ │ │ │ │ ├── Account/ │ │ │ │ │ ├── AccountContext.ts │ │ │ │ │ ├── AccountProvider.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── Balances/ │ │ │ │ │ ├── BalancesContext.ts │ │ │ │ │ ├── BalancesProvider.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── DenyList/ │ │ │ │ │ ├── DenyListContext.ts │ │ │ │ │ ├── DenyListProvider.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── ExtensionNotarizations/ │ │ │ │ │ ├── ExtensionNotarizationsContext.ts │ │ │ │ │ ├── ExtensionNotarizationsProvider.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── GoogleAuth/ │ │ │ │ │ ├── GoogleAuthContext.ts │ │ │ │ │ ├── GoogleAuthProvider.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── ModalSettings/ │ │ │ │ │ ├── ModalSettingsContext.ts │ │ │ │ │ ├── ModalSettingsProvider.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── NotarySettings/ │ │ │ │ │ ├── NotarySettingsContext.ts │ │ │ │ │ ├── NotarySettingsProvider.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── PlatformSettings/ │ │ │ │ │ ├── PlatformSettingsContext.ts │ │ │ │ │ ├── PlatformSettingsProvider.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── ProofGenSettings/ │ │ │ │ │ ├── ProofGenSettingsContext.ts │ │ │ │ │ ├── ProofGenSettingsProvider.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── SendSettings/ │ │ │ │ │ ├── SendSettingsContext.ts │ │ │ │ │ ├── SendSettingsProvider.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── SmartContracts/ │ │ │ │ │ ├── SmartContractsContext.ts │ │ │ │ │ ├── SmartContractsProvider.tsx │ │ │ │ │ └── index.ts │ │ │ │ └── SwapQuote/ │ │ │ │ ├── SwapQuoteContext.ts │ │ │ │ ├── SwapQuoteProvider.tsx │ │ │ │ └── index.ts │ │ │ ├── garanti/ │ │ │ │ ├── Deposits/ │ │ │ │ │ ├── DepositsContext.ts │ │ │ │ │ ├── DepositsProvider.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── Liquidity/ │ │ │ │ │ ├── LiquidityContext.ts │ │ │ │ │ ├── LiquidityProvider.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── OnRamperIntents/ │ │ │ │ │ ├── OnRamperIntentsContext.ts │ │ │ │ │ ├── OnRamperIntentsProvider.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── Ramp/ │ │ │ │ │ ├── RampContext.ts │ │ │ │ │ ├── RampProvider.tsx │ │ │ │ │ └── index.ts │ │ │ │ └── Registration/ │ │ │ │ ├── RegistrationContext.ts │ │ │ │ ├── RegistrationProvider.tsx │ │ │ │ └── index.ts │ │ │ ├── hdfc/ │ │ │ │ ├── Deposits/ │ │ │ │ │ ├── DepositsContext.ts │ │ │ │ │ ├── DepositsProvider.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── Liquidity/ │ │ │ │ │ ├── LiquidityContext.ts │ │ │ │ │ ├── LiquidityProvider.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── OnRamperIntents/ │ │ │ │ │ ├── OnRamperIntentsContext.ts │ │ │ │ │ ├── OnRamperIntentsProvider.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── Ramp/ │ │ │ │ │ ├── RampContext.ts │ │ │ │ │ ├── RampProvider.tsx │ │ │ │ │ └── index.ts │ │ │ │ └── Registration/ │ │ │ │ ├── RegistrationContext.ts │ │ │ │ ├── RegistrationProvider.tsx │ │ │ │ └── index.ts │ │ │ ├── legacy/ │ │ │ │ └── Deposits/ │ │ │ │ ├── DepositsContext.ts │ │ │ │ ├── DepositsProvider.tsx │ │ │ │ └── index.ts │ │ │ ├── revolut/ │ │ │ │ ├── Deposits/ │ │ │ │ │ ├── DepositsContext.ts │ │ │ │ │ ├── DepositsProvider.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── Liquidity/ │ │ │ │ │ ├── LiquidityContext.ts │ │ │ │ │ ├── LiquidityProvider.tsx │ │ │ │ │ ├── helper.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── OnRamperIntents/ │ │ │ │ │ ├── OnRamperIntentsContext.ts │ │ │ │ │ ├── OnRamperIntentsProvider.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── Permissions/ │ │ │ │ │ ├── PermissionsContext.ts │ │ │ │ │ ├── PermissionsProvider.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── Ramp/ │ │ │ │ │ ├── RampContext.ts │ │ │ │ │ ├── RampProvider.tsx │ │ │ │ │ └── index.ts │ │ │ │ └── Registration/ │ │ │ │ ├── RegistrationContext.ts │ │ │ │ ├── RegistrationProvider.tsx │ │ │ │ └── index.ts │ │ │ └── venmo/ │ │ │ ├── Deposits/ │ │ │ │ ├── DepositsContext.ts │ │ │ │ ├── DepositsProvider.tsx │ │ │ │ └── index.ts │ │ │ ├── Liquidity/ │ │ │ │ ├── LiquidityContext.ts │ │ │ │ ├── LiquidityProvider.tsx │ │ │ │ ├── helper.ts │ │ │ │ └── index.ts │ │ │ ├── OnRamperIntents/ │ │ │ │ ├── OnRamperIntentsContext.ts │ │ │ │ ├── OnRamperIntentsProvider.tsx │ │ │ │ └── index.ts │ │ │ ├── Permissions/ │ │ │ │ ├── PermissionsContext.ts │ │ │ │ ├── PermissionsProvider.tsx │ │ │ │ └── index.ts │ │ │ ├── Ramp/ │ │ │ │ ├── RampContext.ts │ │ │ │ ├── RampProvider.tsx │ │ │ │ └── index.ts │ │ │ └── Registration/ │ │ │ ├── RegistrationContext.ts │ │ │ ├── RegistrationProvider.tsx │ │ │ └── index.ts │ │ ├── helpers/ │ │ │ ├── abi/ │ │ │ │ ├── fusdc.abi.ts │ │ │ │ ├── garanti/ │ │ │ │ │ ├── ramp.abi.ts │ │ │ │ │ └── send.abi.ts │ │ │ │ ├── hdfc/ │ │ │ │ │ ├── ramp.abi.ts │ │ │ │ │ └── send.abi.ts │ │ │ │ ├── legacy/ │ │ │ │ │ ├── nft.abi.ts │ │ │ │ │ └── ramp.abi.ts │ │ │ │ ├── revolut/ │ │ │ │ │ ├── accountRegistry.abi.ts │ │ │ │ │ ├── ramp.abi.ts │ │ │ │ │ └── send.abi.ts │ │ │ │ └── venmo/ │ │ │ │ ├── ramp.abi.ts │ │ │ │ └── send.abi.ts │ │ │ ├── addressFormat.ts │ │ │ ├── binaryFormat.ts │ │ │ ├── cards.ts │ │ │ ├── constants.ts │ │ │ ├── deployed_addresses.ts │ │ │ ├── dkim/ │ │ │ │ ├── body/ │ │ │ │ │ ├── index.js │ │ │ │ │ ├── relaxed.js │ │ │ │ │ └── simple.js │ │ │ │ ├── dkim-verifier.js │ │ │ │ ├── header/ │ │ │ │ │ ├── index.js │ │ │ │ │ ├── relaxed.js │ │ │ │ │ └── simple.js │ │ │ │ ├── index.js │ │ │ │ ├── message-parser.js │ │ │ │ ├── parse-dkim-headers.js │ │ │ │ └── tools.js │ │ │ ├── docUrls.ts │ │ │ ├── ens.ts │ │ │ ├── fast-sha256.ts │ │ │ ├── inputBuffer.ts │ │ │ ├── keccack.ts │ │ │ ├── merkle.ts │ │ │ ├── messagEncryption.ts │ │ │ ├── noop.ts │ │ │ ├── notary.ts │ │ │ ├── placeholderEmailBody.ts │ │ │ ├── poseidonHash.ts │ │ │ ├── rsa.ts │ │ │ ├── shaHash.ts │ │ │ ├── sshFormat.ts │ │ │ ├── strings/ │ │ │ │ ├── common.ts │ │ │ │ ├── garanti.ts │ │ │ │ ├── hdfc.ts │ │ │ │ ├── index.ts │ │ │ │ ├── platform.ts │ │ │ │ ├── revolut.ts │ │ │ │ └── venmo.ts │ │ │ ├── submitProof.ts │ │ │ ├── tableFormatters.ts │ │ │ ├── tokens.ts │ │ │ ├── types/ │ │ │ │ ├── deposit.ts │ │ │ │ ├── googleMailApi.ts │ │ │ │ ├── index.ts │ │ │ │ ├── loginStatus.ts │ │ │ │ ├── modals.ts │ │ │ │ ├── newDepositStatus.ts │ │ │ │ ├── notarySettings.ts │ │ │ │ ├── notaryVerification.ts │ │ │ │ ├── paymentPlatform.ts │ │ │ │ ├── proofGeneration.ts │ │ │ │ ├── receiveNetworks.ts │ │ │ │ ├── receiveTokens.ts │ │ │ │ ├── registration.ts │ │ │ │ ├── sendStatus.ts │ │ │ │ ├── smartContracts.ts │ │ │ │ └── transactionStatus.ts │ │ │ ├── uncompress.test.ts │ │ │ ├── uncompress.ts │ │ │ ├── units.ts │ │ │ └── verifiers/ │ │ │ ├── registration_vkey.ts │ │ │ └── send_vkey.ts │ │ ├── hooks/ │ │ │ ├── garanti/ │ │ │ │ ├── useDeposits.ts │ │ │ │ ├── useLiquidity.ts │ │ │ │ ├── useOnRamperIntents.ts │ │ │ │ ├── useRampState.ts │ │ │ │ └── useRegistration.ts │ │ │ ├── hdfc/ │ │ │ │ ├── useDeposits.ts │ │ │ │ ├── useLiquidity.ts │ │ │ │ ├── useOnRamperIntents.ts │ │ │ │ ├── useRampState.ts │ │ │ │ └── useRegistration.ts │ │ │ ├── revolut/ │ │ │ │ ├── useDeposits.ts │ │ │ │ ├── useLiquidity.ts │ │ │ │ ├── useOnRamperIntents.ts │ │ │ │ ├── useRampState.ts │ │ │ │ └── useRegistration.ts │ │ │ ├── useAccount.ts │ │ │ ├── useBalance.ts │ │ │ ├── useBrowserExtension.ts │ │ │ ├── useDenyList.ts │ │ │ ├── useDevice.ts │ │ │ ├── useDragAndDrop.ts │ │ │ ├── useExtensionNotarizations.ts │ │ │ ├── useFetchNotaryList.ts │ │ │ ├── useFileBrowser.ts │ │ │ ├── useGithubClient.ts │ │ │ ├── useGmailClient.ts │ │ │ ├── useGoogleAuth.ts │ │ │ ├── useInterval.ts │ │ │ ├── useLegacyDeposits.ts │ │ │ ├── useLifiBridge.ts │ │ │ ├── useLocalStorage.ts │ │ │ ├── useMediaQuery.ts │ │ │ ├── useModal.ts │ │ │ ├── useNotarySettings.ts │ │ │ ├── useOnClickOutside.ts │ │ │ ├── usePermissions.ts │ │ │ ├── usePlatformSettings.ts │ │ │ ├── useProofGenSettings.ts │ │ │ ├── useQuery.ts │ │ │ ├── useRemoteNotaryUploadTest.ts │ │ │ ├── useRemoteNotaryVerification.ts │ │ │ ├── useRemoteProofGen.ts │ │ │ ├── useSendSettings.ts │ │ │ ├── useSmartContracts.ts │ │ │ ├── useSocketBridge.ts │ │ │ ├── useSwapQuote.ts │ │ │ └── venmo/ │ │ │ ├── useDeposits.ts │ │ │ ├── useLiquidity.ts │ │ │ ├── useOnRamperIntents.ts │ │ │ ├── useRampState.ts │ │ │ └── useRegistration.ts │ │ ├── index.css │ │ ├── index.js │ │ ├── mocks/ │ │ │ ├── handlers.js │ │ │ └── server.js │ │ ├── pages/ │ │ │ ├── Deposit.tsx │ │ │ ├── Landing.tsx │ │ │ ├── Liquidity.tsx │ │ │ ├── Modals.tsx │ │ │ ├── Permissions.tsx │ │ │ ├── Privacy.tsx │ │ │ ├── Registration.tsx │ │ │ ├── Send.tsx │ │ │ ├── Swap.tsx │ │ │ ├── Tos.tsx │ │ │ └── Withdraw.tsx │ │ ├── react-app-env.d.ts │ │ ├── styles.css │ │ ├── theme/ │ │ │ ├── colors.tsx │ │ │ ├── media.tsx │ │ │ ├── text.tsx │ │ │ └── zIndex.ts │ │ └── types/ │ │ ├── privy.d.ts │ │ └── wagmi.d.ts │ └── tsconfig.json ├── contracts-domain/ │ ├── .gitignore │ ├── .solcover.js │ ├── contracts/ │ │ ├── DomainExchange.sol │ │ ├── TransferDomainProcessor.sol │ │ ├── VerifiedDomainRegistry.sol │ │ ├── VerifyDomainProcessor.sol │ │ ├── external/ │ │ │ ├── AddressAllowList.sol │ │ │ ├── ClaimVerifier.sol │ │ │ ├── ManagedKeyHashAdapterV2.sol │ │ │ ├── NullifierRegistry.sol │ │ │ ├── TicketmasterDataParsing.sol │ │ │ ├── interfaces/ │ │ │ │ ├── IKeyHashAdapterV2.sol │ │ │ │ ├── INullifierRegistry.sol │ │ │ │ └── IProxyBaseProcessor.sol │ │ │ ├── lib/ │ │ │ │ ├── AddressArrayUtils.sol │ │ │ │ ├── Bytes32ArrayUtils.sol │ │ │ │ ├── DateTime.sol │ │ │ │ ├── StringArrayUtils.sol │ │ │ │ ├── StringConversionUtils.sol │ │ │ │ └── Uint256ArrayUtils.sol │ │ │ └── processors/ │ │ │ ├── EmailBaseProcessor.sol │ │ │ └── ProxyBaseProcessor.sol │ │ ├── interfaces/ │ │ │ ├── IDomainExchange.sol │ │ │ ├── ITransferDomainProcessor.sol │ │ │ ├── IVerifiedDomainRegistry.sol │ │ │ └── IVerifyDomainProcessor.sol │ │ ├── mocks/ │ │ │ ├── DomainExchangeMock.sol │ │ │ ├── TransferDomainProcessorMock.sol │ │ │ ├── USDCMock.sol │ │ │ └── VerifyDomainProcessorMock.sol │ │ └── verifiers/ │ │ └── namecheap_transfer_verifier.sol │ ├── deploy/ │ │ ├── 00_deploy_domain_system.ts │ │ └── deployment_summary.ts │ ├── deployments/ │ │ ├── base/ │ │ │ ├── .chainId │ │ │ ├── ClaimVerifier.json │ │ │ ├── DomainExchange.json │ │ │ ├── NamecheapManagedKeyHashAdapter.json │ │ │ ├── NullifierRegistry.json │ │ │ ├── TransferDomainProcessor.json │ │ │ ├── VerifiedDomainRegistry.json │ │ │ ├── VerifyDomainProcessor.json │ │ │ └── solcInputs/ │ │ │ ├── a22247643263102eca9fc6c72e24c17d.json │ │ │ ├── a43d75c8fa53cbd70612f5013c5d17a2.json │ │ │ └── d865a6f49eab8c58036d78b72f5cb448.json │ │ ├── base_staging/ │ │ │ ├── .chainId │ │ │ ├── ClaimVerifier.json │ │ │ ├── DomainExchange.json │ │ │ ├── NamecheapManagedKeyHashAdapter.json │ │ │ ├── NullifierRegistry.json │ │ │ ├── TransferDomainProcessor.json │ │ │ ├── VerifiedDomainRegistry.json │ │ │ ├── VerifyDomainProcessor.json │ │ │ └── solcInputs/ │ │ │ ├── a22247643263102eca9fc6c72e24c17d.json │ │ │ ├── a43d75c8fa53cbd70612f5013c5d17a2.json │ │ │ └── d865a6f49eab8c58036d78b72f5cb448.json │ │ ├── helpers.ts │ │ ├── outputs/ │ │ │ ├── baseContracts.ts │ │ │ └── baseStagingContracts.ts │ │ ├── parameters.ts │ │ └── sepolia/ │ │ ├── .chainId │ │ ├── ClaimVerifier.json │ │ ├── DomainExchange.json │ │ ├── NamecheapManagedKeyHashAdapter.json │ │ ├── NullifierRegistry.json │ │ ├── TransferDomainProcessor.json │ │ ├── USDCMock.json │ │ ├── VerifiedDomainRegistry.json │ │ ├── VerifyDomainProcessor.json │ │ └── solcInputs/ │ │ ├── a22247643263102eca9fc6c72e24c17d.json │ │ ├── a43d75c8fa53cbd70612f5013c5d17a2.json │ │ └── d865a6f49eab8c58036d78b72f5cb448.json │ ├── hardhat.config.ts │ ├── package.json │ ├── test/ │ │ ├── deploy/ │ │ │ └── domainSystemDeploy.spec.ts │ │ ├── domainExchange.spec.ts │ │ ├── transferDomainProcessor.spec.ts │ │ ├── verifiedDomainRegistry.spec.ts │ │ └── verifyDomainProcessor.spec.ts │ ├── tsconfig.json │ └── utils/ │ ├── common/ │ │ ├── blockchainUtils.ts │ │ ├── index.ts │ │ └── units.ts │ ├── constants.ts │ ├── contracts.ts │ ├── deploys.ts │ ├── protocolUtils.ts │ ├── reclaimUtils.ts │ ├── test/ │ │ ├── accountUtils.ts │ │ ├── index.ts │ │ ├── testingUtils.ts │ │ └── types.ts │ └── types.ts └── contracts-ramp/ ├── .gitignore ├── .solcover.js ├── .yarnrc.yml ├── README.md ├── contracts/ │ ├── external/ │ │ ├── AddressArrayUtils.sol │ │ ├── Bytes32ArrayUtils.sol │ │ ├── DateTime.sol │ │ └── Uint256ArrayUtils.sol │ ├── interfaces/ │ │ ├── IPoseidon.sol │ │ ├── IPoseidon3.sol │ │ └── IPoseidon6.sol │ ├── lib/ │ │ └── StringConversionUtils.sol │ ├── mocks/ │ │ ├── StringConversionUtilsMock.sol │ │ └── USDCMock.sol │ ├── processors/ │ │ ├── BaseProcessor.sol │ │ ├── BaseProcessorV2.sol │ │ ├── TLSBaseProcessor.sol │ │ ├── keyHashAdapters/ │ │ │ ├── IKeyHashAdapter.sol │ │ │ ├── IKeyHashAdapterV2.sol │ │ │ ├── ManagedKeyHashAdapter.sol │ │ │ └── ManagedKeyHashAdapterV2.sol │ │ └── nullifierRegistries/ │ │ ├── INullifierRegistry.sol │ │ └── NullifierRegistry.sol │ ├── ramps/ │ │ ├── garanti/ │ │ │ ├── GarantiRamp.sol │ │ │ ├── GarantiRegistrationProcessor.sol │ │ │ ├── GarantiSendProcessor.sol │ │ │ ├── interfaces/ │ │ │ │ ├── IGarantiBodySuffixHashVerifier.sol │ │ │ │ ├── IGarantiRegistrationProcessor.sol │ │ │ │ └── IGarantiSendProcessor.sol │ │ │ └── mocks/ │ │ │ ├── GarantiRegistrationProcessorMock.sol │ │ │ └── GarantiSendProcessorMock.sol │ │ ├── hdfc/ │ │ │ ├── HDFCRamp.sol │ │ │ ├── HDFCRegistrationProcessor.sol │ │ │ ├── HDFCSendProcessor.sol │ │ │ ├── interfaces/ │ │ │ │ ├── IHDFCSendProcessor.sol │ │ │ │ └── IRegistrationProcessor.sol │ │ │ ├── lib/ │ │ │ │ └── HDFCTimestampParsing.sol │ │ │ └── mocks/ │ │ │ ├── HDFCRegistrationProcessorMock.sol │ │ │ ├── HDFCSendProcessorMock.sol │ │ │ └── HDFCTimestampParsingMock.sol │ │ ├── revolut/ │ │ │ ├── RevolutAccountRegistrationProcessor.sol │ │ │ ├── RevolutAccountRegistry.sol │ │ │ ├── RevolutRamp.sol │ │ │ ├── RevolutSendProcessor.sol │ │ │ ├── interfaces/ │ │ │ │ ├── IRevolutAccountRegistrationProcessor.sol │ │ │ │ ├── IRevolutAccountRegistry.sol │ │ │ │ └── IRevolutSendProcessor.sol │ │ │ └── mocks/ │ │ │ ├── RevolutAccountRegistrationProcessorMock.sol │ │ │ └── RevolutSendProcessorMock.sol │ │ ├── venmo-v1/ │ │ │ ├── Ramp.sol │ │ │ ├── VenmoRegistrationProcessor.sol │ │ │ ├── VenmoSendProcessor.sol │ │ │ ├── interfaces/ │ │ │ │ ├── IRegistrationProcessor.sol │ │ │ │ └── ISendProcessor.sol │ │ │ └── mocks/ │ │ │ ├── VenmoRegistrationProcessorMock.sol │ │ │ └── VenmoSendProcessorMock.sol │ │ ├── venmo-v2/ │ │ │ ├── VenmoRampV2.sol │ │ │ ├── VenmoRegistrationProcessorV2.sol │ │ │ ├── VenmoSendProcessorV2.sol │ │ │ └── interfaces/ │ │ │ ├── IRamp.sol │ │ │ └── IRegistrationProcessorV2.sol │ │ └── wise/ │ │ ├── WiseAccountRegistrationProcessor.sol │ │ ├── WiseAccountRegistry.sol │ │ ├── WiseOffRamperRegistrationProcessor.sol │ │ ├── WiseRamp.sol │ │ ├── WiseSendProcessor.sol │ │ ├── interfaces/ │ │ │ ├── IWiseAccountRegistrationProcessor.sol │ │ │ ├── IWiseAccountRegistry.sol │ │ │ ├── IWiseOffRamperRegistrationProcessor.sol │ │ │ └── IWiseSendProcessor.sol │ │ └── mocks/ │ │ ├── WiseAccountRegistrationProcessorMock.sol │ │ ├── WiseOffRamperRegistrationProcessorMock.sol │ │ └── WiseSendProcessorMock.sol │ └── verifiers/ │ ├── garanti_body_suffix_hasher_verifier.sol │ ├── garanti_registration_verifier.sol │ ├── garanti_send_verifier.sol │ ├── hdfc_registration_verifier.sol │ ├── hdfc_send_verifier.sol │ ├── paylah_registration_verifier.sol │ ├── paylah_send_verifier.sol │ ├── venmo_registration_verifier.sol │ ├── venmo_send_verifier.sol │ ├── venmo_send_verifier_v1.sol │ └── venmo_send_verifier_v2.sol ├── deploy/ │ ├── 00_deploy_venmo_contracts.ts │ ├── 01_deploy_hdfc_contracts.ts │ ├── 02_deploy_venmo_v2.ts │ ├── 03_deploy_garanti_contracts.ts │ ├── 04_deploy_wise_contracts.ts │ ├── 05_deploy_revolut_contracts.ts │ └── deploy_summary.ts ├── deployments/ │ ├── base/ │ │ ├── .chainId │ │ ├── GarantiBodyHashVerifier.json │ │ ├── GarantiManagedKeyHashAdapter.json │ │ ├── GarantiRamp.json │ │ ├── GarantiRegistrationProcessor.json │ │ ├── GarantiSendProcessor.json │ │ ├── HDFCManagedKeyHashAdapter.json │ │ ├── HDFCRamp.json │ │ ├── HDFCRegistrationProcessor.json │ │ ├── HDFCSendProcessor.json │ │ ├── NullifierRegistry.json │ │ ├── Poseidon3.json │ │ ├── Poseidon6.json │ │ ├── Ramp.json │ │ ├── RevolutAccountRegistrationProcessor.json │ │ ├── RevolutAccountRegistry.json │ │ ├── RevolutRamp.json │ │ ├── RevolutSendProcessor.json │ │ ├── VenmoManagedKeyHashAdapter.json │ │ ├── VenmoManagedKeyHashAdapterV2.json │ │ ├── VenmoRampV2.json │ │ ├── VenmoRegistrationProcessor.json │ │ ├── VenmoRegistrationProcessorV2.json │ │ ├── VenmoSendProcessor.json │ │ ├── VenmoSendProcessorV2.json │ │ └── solcInputs/ │ │ ├── 229aaeec0b8310f97c638f9ed903cb04.json │ │ ├── 3235f00afe52b593578a06ba6b1f711c.json │ │ ├── 3d00f158650f73562ebab290bf8faab9.json │ │ ├── 3ead3a1930264a5f1428c2beccc481e4.json │ │ ├── 582bda84e77341f31e48e553d6955fd7.json │ │ ├── 8bc81ff8830ebb82cab81dfebf9e965a.json │ │ ├── b37c1ae3295cdbee97a5fae6e06eede9.json │ │ ├── c76db42e3552a72f819af71bb2be52ce.json │ │ └── f47db0aba1ef1355cf5a362858260c2b.json │ ├── base_staging/ │ │ ├── .chainId │ │ ├── GarantiBodyHashVerifier.json │ │ ├── GarantiManagedKeyHashAdapter.json │ │ ├── GarantiRamp.json │ │ ├── GarantiRegistrationProcessor.json │ │ ├── GarantiSendProcessor.json │ │ ├── HDFCManagedKeyHashAdapter.json │ │ ├── HDFCRamp.json │ │ ├── HDFCRegistrationProcessor.json │ │ ├── HDFCSendProcessor.json │ │ ├── NullifierRegistry.json │ │ ├── Poseidon3.json │ │ ├── Poseidon6.json │ │ ├── Ramp.json │ │ ├── RevolutAccountRegistrationProcessor.json │ │ ├── RevolutAccountRegistry.json │ │ ├── RevolutRamp.json │ │ ├── RevolutSendProcessor.json │ │ ├── VenmoManagedKeyHashAdapter.json │ │ ├── VenmoManagedKeyHashAdapterV2.json │ │ ├── VenmoRampV2.json │ │ ├── VenmoRegistrationProcessor.json │ │ ├── VenmoRegistrationProcessorV2.json │ │ ├── VenmoSendProcessor.json │ │ ├── VenmoSendProcessorV2.json │ │ └── solcInputs/ │ │ ├── 1dc9a2624d5fa8a2a6f6105ee74be00a.json │ │ ├── 3235f00afe52b593578a06ba6b1f711c.json │ │ ├── 3d00f158650f73562ebab290bf8faab9.json │ │ ├── 3ead3a1930264a5f1428c2beccc481e4.json │ │ ├── 582bda84e77341f31e48e553d6955fd7.json │ │ ├── 62e130016f0ae1eb6799549b2feee2a6.json │ │ ├── 8224d865df725416aec66f5f50bc0a5a.json │ │ ├── 8bc81ff8830ebb82cab81dfebf9e965a.json │ │ ├── 96d924ca10695a353bfa4c997166694e.json │ │ ├── b37c1ae3295cdbee97a5fae6e06eede9.json │ │ ├── f47db0aba1ef1355cf5a362858260c2b.json │ │ └── fddf950e5f6f8abf0d9e29e0433009ae.json │ ├── goerli/ │ │ ├── .chainId │ │ ├── HDFCManagedKeyHashAdapter.json │ │ ├── HDFCRamp.json │ │ ├── HDFCRegistrationProcessor.json │ │ ├── HDFCSendProcessor.json │ │ ├── NullifierRegistry.json │ │ ├── Poseidon3.json │ │ ├── Poseidon6.json │ │ ├── Ramp.json │ │ ├── USDCMock.json │ │ ├── VenmoManagedKeyHashAdapter.json │ │ ├── VenmoManagedKeyHashAdapterV2.json │ │ ├── VenmoRampV2.json │ │ ├── VenmoRegistrationProcessor.json │ │ ├── VenmoRegistrationProcessorV2.json │ │ ├── VenmoSendProcessor.json │ │ ├── VenmoSendProcessorV2.json │ │ └── solcInputs/ │ │ ├── 20e2dd243dc355ae5f984256d33e4969.json │ │ ├── 76890714b227e5b64057f01ecc7e4f3a.json │ │ ├── 8704d78b2acb3413578e4ecb20a5b51d.json │ │ ├── 9f5b84b5a4484299f202298c88bacb39.json │ │ ├── abdf02aaee54cd0feb794abb995bbd6c.json │ │ └── f04018ca3672426744531c5b0e9c8cda.json │ ├── helpers.ts │ ├── outputs/ │ │ ├── baseContracts.ts │ │ ├── baseStagingContracts.ts │ │ └── baseStagingContractsOld.ts │ ├── parameters.ts │ └── sepolia/ │ ├── .chainId │ ├── GarantiBodyHashVerifier.json │ ├── GarantiManagedKeyHashAdapter.json │ ├── GarantiRamp.json │ ├── GarantiRegistrationProcessor.json │ ├── GarantiSendProcessor.json │ ├── HDFCManagedKeyHashAdapter.json │ ├── HDFCRamp.json │ ├── HDFCRegistrationProcessor.json │ ├── HDFCSendProcessor.json │ ├── NullifierRegistry.json │ ├── Poseidon3.json │ ├── Poseidon6.json │ ├── Ramp.json │ ├── RevolutAccountRegistrationProcessor.json │ ├── RevolutAccountRegistry.json │ ├── RevolutRamp.json │ ├── RevolutSendProcessor.json │ ├── USDCMock.json │ ├── VenmoManagedKeyHashAdapter.json │ ├── VenmoManagedKeyHashAdapterV2.json │ ├── VenmoRampV2.json │ ├── VenmoRegistrationProcessor.json │ ├── VenmoRegistrationProcessorV2.json │ ├── VenmoSendProcessor.json │ ├── VenmoSendProcessorV2.json │ └── solcInputs/ │ ├── 17fa5544cf874024d623cdbb27eac115.json │ ├── 3d00f158650f73562ebab290bf8faab9.json │ ├── 8bc81ff8830ebb82cab81dfebf9e965a.json │ ├── 8f4bf7f45c28925cb238117838cfd64c.json │ ├── 96d924ca10695a353bfa4c997166694e.json │ ├── c76db42e3552a72f819af71bb2be52ce.json │ ├── f47db0aba1ef1355cf5a362858260c2b.json │ ├── fa5ebdb8a9b4513b8497f92665de3bf6.json │ └── fddf950e5f6f8abf0d9e29e0433009ae.json ├── hardhat.config.ts ├── package.json ├── test/ │ ├── deploy/ │ │ ├── garantiDeploy.spec.ts │ │ ├── hdfcDeploy.spec.ts │ │ ├── revolutDeploy.spec.ts │ │ ├── venmoDeploy.spec.ts │ │ ├── venmoV2Deploy.spec.ts │ │ └── wiseDeploy.spec.ts │ ├── libs/ │ │ └── stringConversionUtils.spec.ts │ ├── processors/ │ │ ├── managedKeyHashAdapter.spec.ts │ │ ├── managedKeyHashAdapterV2.spec.ts │ │ └── nullifierRegistry.spec.ts │ └── ramps/ │ ├── garanti/ │ │ ├── garantiRamp.spec.ts │ │ ├── garantiRegistrationProcessor.spec.ts │ │ └── garantiSendProcessor.spec.ts │ ├── hdfc/ │ │ ├── hdfcRamp.spec.ts │ │ ├── hdfcRegistrationProcessor.spec.ts │ │ ├── hdfcSendProcessor.spec.ts │ │ └── hdfcTimestampParsing.spec.ts │ ├── revolut/ │ │ ├── revolutAccountRegistrationProcessor.spec.ts │ │ ├── revolutAccountRegistry.spec.ts │ │ ├── revolutRamp.spec.ts │ │ └── revolutSendProcessor.spec.ts │ ├── venmo-v1/ │ │ ├── ramp.spec.ts │ │ ├── venmoRegistrationProcessor.spec.ts │ │ └── venmoSendProcessor.spec.ts │ ├── venmo-v2/ │ │ ├── venmoRampV2.spec.ts │ │ ├── venmoRegistrationProcessorV2.spec.ts │ │ └── venmoSendProcessorV2.spec.ts │ └── wise/ │ ├── wiseAccountRegistrationProcessor.spec.ts │ ├── wiseAccountRegistry.spec.ts │ ├── wiseOffRamperRegistrationProcessor.spec.ts │ ├── wiseRamp.spec.ts │ └── wiseSendProcessor.spec.ts ├── tsconfig.json └── utils/ ├── common/ │ ├── blockchainUtils.ts │ ├── index.ts │ └── units.ts ├── constants.ts ├── contracts.ts ├── deploys.ts ├── protocolUtils.ts ├── test/ │ ├── accountUtils.ts │ ├── index.ts │ ├── testingUtils.ts │ └── types.ts └── types.ts