{
  "noir_version": "1.0.0-beta.22+c57152f91260ecdb9faad4efc20abb14b6d2ece7",
  "hash": "6475321618080232911",
  "abi": {
    "parameters": [
      {
        "name": "a",
        "type": {
          "kind": "struct",
          "path": "mock_types::PreviousRollupData",
          "fields": [
            {
              "name": "base_or_merge_public_inputs",
              "type": {
                "kind": "struct",
                "path": "mock_types::RollupPublicInputs",
                "fields": [
                  {
                    "name": "accumulated",
                    "type": {
                      "kind": "integer",
                      "sign": "unsigned",
                      "width": 32
                    }
                  }
                ]
              }
            },
            {
              "name": "proof",
              "type": {
                "kind": "array",
                "length": 480,
                "type": {
                  "kind": "field"
                }
              }
            },
            {
              "name": "vk",
              "type": {
                "kind": "struct",
                "path": "mock_types::protocol_types::proof::verification_key::VerificationKey",
                "fields": [
                  {
                    "name": "key",
                    "type": {
                      "kind": "array",
                      "length": 115,
                      "type": {
                        "kind": "field"
                      }
                    }
                  },
                  {
                    "name": "hash",
                    "type": {
                      "kind": "field"
                    }
                  }
                ]
              }
            }
          ]
        },
        "visibility": "private"
      },
      {
        "name": "b",
        "type": {
          "kind": "struct",
          "path": "mock_types::PreviousRollupData",
          "fields": [
            {
              "name": "base_or_merge_public_inputs",
              "type": {
                "kind": "struct",
                "path": "mock_types::RollupPublicInputs",
                "fields": [
                  {
                    "name": "accumulated",
                    "type": {
                      "kind": "integer",
                      "sign": "unsigned",
                      "width": 32
                    }
                  }
                ]
              }
            },
            {
              "name": "proof",
              "type": {
                "kind": "array",
                "length": 480,
                "type": {
                  "kind": "field"
                }
              }
            },
            {
              "name": "vk",
              "type": {
                "kind": "struct",
                "path": "mock_types::protocol_types::proof::verification_key::VerificationKey",
                "fields": [
                  {
                    "name": "key",
                    "type": {
                      "kind": "array",
                      "length": 115,
                      "type": {
                        "kind": "field"
                      }
                    }
                  },
                  {
                    "name": "hash",
                    "type": {
                      "kind": "field"
                    }
                  }
                ]
              }
            }
          ]
        },
        "visibility": "private"
      }
    ],
    "return_type": {
      "abi_type": {
        "kind": "struct",
        "path": "mock_types::RollupPublicInputs",
        "fields": [
          {
            "name": "accumulated",
            "type": {
              "kind": "integer",
              "sign": "unsigned",
              "width": 32
            }
          }
        ]
      },
      "visibility": "public"
    },
    "error_types": {
      "14990209321349310352": {
        "error_kind": "string",
        "string": "attempt to add with overflow"
      }
    }
  },
  "bytecode": "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",
  "debug_symbols": "tZTLioQwEEX/JWsXVuVh7F8ZhiZtp5tAiJLWgUH894lifCwigswqJuU9lVRdqidP/ejed+Ne9Yfcvnry8MZa877bulKtqV047YeMxO299VqHI7KJB1WjvHYtubnO2oz8KNtNP30a5aa1VT5E84xo9wxrAL6M1ePXkK3qPC0FxmcxcLrIOez0kNYzLukMYAL5SsAdAQ8ICBAJWJQLAXO2Q9A0ghYsIqiEPIlgBwgUZUSgxA1CnEdwsSCETCJEGoE0thL59g7F6XYIKmMxS0i2Qx68goroCMrY5hVw2lIilgEKlrRUftlTANdNBXjdVUCv2+qYcc5XwC8bK7/sLCj+1Voy3iH0N2mt8sgXYvVFWexe8R12qjJ+N6IJklvg0TF3RthYs4zwcRnGLN6oh9XzLH91rtqM9va3iZE4/BtfV/rZeT3mmGIh6x8=",
  "file_map": {
    "21": {
      "source": "pub mod hash;\npub mod aes128;\npub mod array;\npub mod vector;\npub mod ecdsa_secp256k1;\npub mod ecdsa_secp256r1;\npub mod embedded_curve_ops;\npub mod field;\npub mod collections;\npub mod compat;\npub mod convert;\npub mod option;\npub mod string;\npub mod test;\npub mod cmp;\npub mod ops;\npub mod default;\npub mod prelude;\npub mod runtime;\npub mod meta;\npub mod append;\npub mod mem;\npub mod panic;\npub mod hint;\n\nmod primitive_docs;\nmod internal;\n\n// Oracle calls are required to be wrapped in an unconstrained function\n// Thus, the only argument to the `println` oracle is expected to always be an ident\n#[oracle(print)]\nunconstrained fn print_oracle<T>(with_newline: bool, input: T) {}\n\nunconstrained fn print_unconstrained<T>(with_newline: bool, input: T) {\n    print_oracle(with_newline, input);\n}\n\n/// Print the given input to stdout followed by a newline\npub fn println<T>(input: T) {\n    // Safety: a print statement cannot be constrained\n    unsafe {\n        print_unconstrained(true, input);\n    }\n}\n\n/// Print the given input to stdout\npub fn print<T>(input: T) {\n    // Safety: a print statement cannot be constrained\n    unsafe {\n        print_unconstrained(false, input);\n    }\n}\n\n/// Asserts the validity of the provided proof and public inputs against the provided verification key and hash.\n///\n/// The ACVM cannot determine whether the provided proof is valid during execution as this requires knowledge of\n/// the backend against which the program is being proven. However if an invalid proof if submitted, the program may\n/// fail to prove or the backend may generate a proof which will subsequently fail to verify.\n///\n/// # Important Note\n///\n/// If you are not developing your own backend such as [Barretenberg](https://github.com/AztecProtocol/barretenberg)\n/// you probably shouldn't need to interact with this function directly. It's easier and safer to use a verification\n/// library which is published by the developers of the backend which will document or enforce any safety requirements.\n///\n/// If you use this directly, you're liable to introduce underconstrainedness bugs and *your circuit will be insecure*.\n///\n/// # Arguments\n/// - verification_key: The verification key of the circuit to be verified.\n/// - proof: The proof to be verified.\n/// - public_inputs: The public inputs associated with `proof`\n/// - key_hash: The hash of `verification_key` of the form expected by the backend.\n/// - proof_type: An identifier for the proving scheme used to generate the proof to be verified. This allows\n///               for a single backend to support verifying multiple proving schemes.\n///\n/// # Constraining `key_hash`\n///\n/// The Noir compiler does not by itself constrain that `key_hash` is a valid hash of `verification_key`.\n/// This is because different backends may differ in how they hash their verification keys.\n/// It is then the responsibility of either the noir developer (by explicitly hashing the verification key\n/// in the correct manner) or by the proving system itself internally asserting the correctness of `key_hash`.\npub fn verify_proof_with_type<let N: u32, let M: u32, let K: u32>(\n    verification_key: [Field; N],\n    proof: [Field; M],\n    public_inputs: [Field; K],\n    key_hash: Field,\n    proof_type: u32,\n) {\n    if !crate::runtime::is_unconstrained() {\n        crate::assert_constant(proof_type);\n    }\n    verify_proof_internal(verification_key, proof, public_inputs, key_hash, proof_type);\n}\n\n#[foreign(recursive_aggregation)]\nfn verify_proof_internal<let N: u32, let M: u32, let K: u32>(\n    verification_key: [Field; N],\n    proof: [Field; M],\n    public_inputs: [Field; K],\n    key_hash: Field,\n    proof_type: u32,\n) {}\n\n/// Asserts that the given value is known at compile-time.\n/// Useful for debugging for-loop bounds.\n#[builtin(assert_constant)]\npub fn assert_constant<T>(x: T) {}\n\n/// Asserts that the given value is both true and known at compile-time.\n/// The message can be a string, a format string, or any value, as long as it is known at compile-time\n#[builtin(static_assert)]\npub fn static_assert<T>(predicate: bool, message: T) {}\n\n/// Force a field value to be a witness instead of a constant in the compiled output.\n/// This is often only useful for debugging compiler optimizations.\n///\n/// This has no effect in unconstrained or comptime code.\n#[builtin(as_witness)]\npub fn as_witness(x: Field) {}\n",
      "path": "std/lib.nr",
      "function_locations": [
        {
          "start": 676,
          "name": "print_oracle"
        },
        {
          "start": 750,
          "name": "print_unconstrained"
        },
        {
          "start": 880,
          "name": "println"
        },
        {
          "start": 1063,
          "name": "print"
        },
        {
          "start": 3264,
          "name": "verify_proof_with_type"
        },
        {
          "start": 3681,
          "name": "verify_proof_internal"
        },
        {
          "start": 3846,
          "name": "assert_constant"
        },
        {
          "start": 4105,
          "name": "static_assert"
        },
        {
          "start": 4376,
          "name": "as_witness"
        }
      ]
    },
    "51": {
      "source": "use mock_types::{PreviousRollupData, RollupPublicInputs};\n\nfn main(a: PreviousRollupData, b: PreviousRollupData) -> pub RollupPublicInputs {\n    a.verify(false);\n    b.verify(false);\n\n    a.public_inputs().merge(b.public_inputs())\n}\n",
      "path": "/home/aztec-dev/aztec-packages-private/noir-projects/mock-protocol-circuits/crates/mock-rollup-tx-merge/src/main.nr",
      "function_locations": [
        {
          "start": 139,
          "name": "main"
        }
      ]
    },
    "52": {
      "source": "pub global MAX_COMMITMENTS_PER_CALL: u32 = 2;\npub global MAX_COMMITMENTS_PER_TX: u32 = 4;\npub global MAX_COMMITMENT_READ_REQUESTS_PER_CALL: u32 = 2;\npub global MAX_COMMITMENT_READ_REQUESTS_PER_TX: u32 = 4;\n\npub use protocol_types::{\n    abis::avm_circuit_public_inputs::AvmCircuitPublicInputs,\n    constants::{\n        AVM_V2_PROOF_LENGTH_IN_FIELDS, CHONK_PROOF_LENGTH, CHONK_VK_LENGTH_IN_FIELDS,\n        MEGA_VK_LENGTH_IN_FIELDS, NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH, PROOF_TYPE_AVM,\n        PROOF_TYPE_CHONK, PROOF_TYPE_HN, PROOF_TYPE_HN_FINAL, PROOF_TYPE_HN_TAIL, PROOF_TYPE_OINK,\n        PROOF_TYPE_ROLLUP_HONK, PROOF_TYPE_ROOT_ROLLUP_HONK,\n    },\n    proof::{\n        traits::SerializeToColumns,\n        verification_key::{RollupHonkVerificationKey, VerificationKey},\n    },\n    traits::Serialize,\n};\n\npub struct TxRequest {\n    pub number_of_calls: u32,\n}\n\npub struct AppPublicInputs {\n    pub commitments: [Field; MAX_COMMITMENTS_PER_CALL],\n    pub read_requests: [Field; MAX_COMMITMENT_READ_REQUESTS_PER_CALL],\n}\n\nimpl Default for AppPublicInputs {\n    fn default() -> Self {\n        Self {\n            commitments: [0; MAX_COMMITMENTS_PER_CALL],\n            read_requests: [0; MAX_COMMITMENT_READ_REQUESTS_PER_CALL],\n        }\n    }\n}\n\npub struct PrivateKernelPublicInputs {\n    pub remaining_calls: u32,\n    pub commitments: [Field; MAX_COMMITMENTS_PER_TX],\n    pub read_requests: [Field; MAX_COMMITMENT_READ_REQUESTS_PER_TX],\n}\n\nimpl Default for PrivateKernelPublicInputs {\n    fn default() -> Self {\n        Self {\n            remaining_calls: 0,\n            commitments: [0; MAX_COMMITMENTS_PER_TX],\n            read_requests: [0; MAX_COMMITMENT_READ_REQUESTS_PER_TX],\n        }\n    }\n}\n\npub struct PrivateKernelPublicInputsBuilder {\n    pub remaining_calls: u32,\n    pub commitments: BoundedVec<Field, MAX_COMMITMENTS_PER_TX>,\n    pub read_requests: BoundedVec<Field, MAX_COMMITMENT_READ_REQUESTS_PER_TX>,\n}\n\nimpl PrivateKernelPublicInputsBuilder {\n    pub fn from_tx(tx: TxRequest) -> Self {\n        Self {\n            remaining_calls: tx.number_of_calls,\n            commitments: BoundedVec::new(),\n            read_requests: BoundedVec::new(),\n        }\n    }\n\n    pub fn from_previous_kernel(prev_kernel_public_inputs: PrivateKernelPublicInputs) -> Self {\n        let mut builder = PrivateKernelPublicInputsBuilder {\n            remaining_calls: prev_kernel_public_inputs.remaining_calls,\n            commitments: BoundedVec::new(),\n            read_requests: BoundedVec::new(),\n        };\n        for i in 0..MAX_COMMITMENTS_PER_TX {\n            if prev_kernel_public_inputs.commitments[i] != 0 {\n                builder.commitments.push(prev_kernel_public_inputs.commitments[i]);\n            }\n        }\n        for i in 0..MAX_COMMITMENT_READ_REQUESTS_PER_TX {\n            if prev_kernel_public_inputs.read_requests[i] != 0 {\n                builder.read_requests.push(prev_kernel_public_inputs.read_requests[i]);\n            }\n        }\n        builder\n    }\n\n    pub fn ingest_app_inputs(&mut self, app_inputs: AppPublicInputs) {\n        for i in 0..MAX_COMMITMENTS_PER_CALL {\n            if app_inputs.commitments[i] != 0 {\n                self.commitments.push(app_inputs.commitments[i]);\n            }\n        }\n\n        for i in 0..MAX_COMMITMENT_READ_REQUESTS_PER_CALL {\n            if app_inputs.read_requests[i] != 0 {\n                self.read_requests.push(app_inputs.read_requests[i]);\n            }\n        }\n\n        self.remaining_calls -= 1;\n    }\n\n    pub fn finish(self) -> PrivateKernelPublicInputs {\n        PrivateKernelPublicInputs {\n            remaining_calls: self.remaining_calls,\n            commitments: self.commitments.storage(),\n            read_requests: self.read_requests.storage(),\n        }\n    }\n}\n\n#[derive(Serialize)]\npub struct KernelPublicInputs {\n    pub commitments: [Field; MAX_COMMITMENTS_PER_TX],\n}\n\nimpl Default for KernelPublicInputs {\n    fn default() -> Self {\n        Self { commitments: [0; MAX_COMMITMENTS_PER_TX] }\n    }\n}\n\n#[derive(Serialize)]\npub struct RollupPublicInputs {\n    accumulated: u32,\n}\n\nimpl RollupPublicInputs {\n    pub fn new(accumulated: u32) -> Self {\n        Self { accumulated }\n    }\n\n    pub fn merge(self, other: Self) -> Self {\n        Self { accumulated: self.accumulated + other.accumulated }\n    }\n}\n\npub struct PreviousRollupData {\n    base_or_merge_public_inputs: RollupPublicInputs,\n    proof: [Field; NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH],\n    vk: RollupHonkVerificationKey,\n}\n\nimpl PreviousRollupData {\n    pub fn verify(self, is_root: bool) {\n        let inputs = self.base_or_merge_public_inputs.serialize();\n\n        std::verify_proof_with_type(\n            self.vk.key,\n            self.proof,\n            inputs,\n            self.vk.hash,\n            if is_root {\n                PROOF_TYPE_ROOT_ROLLUP_HONK\n            } else {\n                PROOF_TYPE_ROLLUP_HONK\n            },\n        );\n    }\n\n    pub fn public_inputs(self) -> RollupPublicInputs {\n        self.base_or_merge_public_inputs\n    }\n}\n\n// CHONK: \"Client Honk\" - An UltraHonk variant with incremental folding and delayed non-native arithmetic.\npub struct ChonkProofData {\n    pub public_inputs: KernelPublicInputs,\n    pub proof: [Field; CHONK_PROOF_LENGTH],\n    pub vk_data: VerificationKey<CHONK_VK_LENGTH_IN_FIELDS>,\n}\n\nimpl ChonkProofData {\n    pub fn verify(self) {\n        let inputs = KernelPublicInputs::serialize(self.public_inputs);\n        std::verify_proof_with_type(\n            self.vk_data.key,\n            self.proof,\n            inputs,\n            self.vk_data.hash,\n            PROOF_TYPE_CHONK,\n        );\n    }\n}\n",
      "path": "/home/aztec-dev/aztec-packages-private/noir-projects/mock-protocol-circuits/crates/mock-types/src/lib.nr",
      "function_locations": [
        {
          "start": 1087,
          "name": "<impl Default for AppPublicInputs>::default"
        },
        {
          "start": 1515,
          "name": "<impl Default for PrivateKernelPublicInputs>::default"
        },
        {
          "start": 2010,
          "name": "PrivateKernelPublicInputsBuilder::from_tx"
        },
        {
          "start": 2277,
          "name": "PrivateKernelPublicInputsBuilder::from_previous_kernel"
        },
        {
          "start": 3056,
          "name": "PrivateKernelPublicInputsBuilder::ingest_app_inputs"
        },
        {
          "start": 3544,
          "name": "PrivateKernelPublicInputsBuilder::finish"
        },
        {
          "start": 3935,
          "name": "<impl Default for KernelPublicInputs>::default"
        },
        {
          "start": 4149,
          "name": "RollupPublicInputs::new"
        },
        {
          "start": 4231,
          "name": "RollupPublicInputs::merge"
        },
        {
          "start": 4560,
          "name": "PreviousRollupData::verify"
        },
        {
          "start": 4977,
          "name": "PreviousRollupData::public_inputs"
        },
        {
          "start": 5361,
          "name": "ChonkProofData::verify"
        }
      ]
    }
  },
  "verificationKey": {
    "bytes": "0000000000000000000000000000000000000000000000000000000000000015000000000000000000000000000000000000000000000000000000000000000f0000000000000000000000000000000000000000000000000000000000000005000000000000000000000000000000d7dc514bb567591d252943a9999819bc2f00000000000000000000000000000000001e72c27a1ccccaeecb829dfede070000000000000000000000000000000053b640195ab82344b0edd3beed84a0872f0000000000000000000000000000000000151a9d1214520f5b5d6780205018ab0000000000000000000000000000007e402eb302acc16d0c371395b3fbfa149a00000000000000000000000000000000001a4a5806d3f9b7945f0d56a3d08209000000000000000000000000000000c0b095886bb2d075c9190f14f7c4a4fbdb00000000000000000000000000000000001404952f835787d7017470721c86dc000000000000000000000000000000d8c051e0afc23def1bcaab1318253a2a7100000000000000000000000000000000001f716fc9795aba53e1840ab3b9a62b0000000000000000000000000000002a7aa84474834cc43a8ab71bfc78b4663200000000000000000000000000000000000c1946ccaffca0fa64c48711231173000000000000000000000000000000f0a369e3a63ec49f99a98690abca782f0800000000000000000000000000000000000228eb83767e0135ed4bc96a40d0ec000000000000000000000000000000e8eee1dd68346fed861602b29d39a6b1780000000000000000000000000000000000161b787ee3a1876ed244a6d7a50d020000000000000000000000000000006c53b68ec6fd933d98d16f553cb022482800000000000000000000000000000000001f35680d23fce59779c5f2c456e9e5000000000000000000000000000000bbbb7d80fe35dea3f229079f0033c74dd700000000000000000000000000000000000547200ffd428144b9aa603fd6e849000000000000000000000000000000f472fd6715a63e57c2199cbe2a46910dc40000000000000000000000000000000000115a8cb56959cfc6e1974ba3c28eca00000000000000000000000000000060b79c8f613e48341e9e5f1d45bd0e9763000000000000000000000000000000000015d0ad84e57564a72792bba51fcbb7000000000000000000000000000000759a532f9125622d9a671fe1e7f73432d00000000000000000000000000000000000249d1353c3b387b45b73015df44f4f0000000000000000000000000000003cea00fcedd40c6deb1a3c8754925480cf00000000000000000000000000000000000e3b48d9f27dde604c15657844e2a200000000000000000000000000000083d888387219028cb4c98a43baf64ff20400000000000000000000000000000000002d3591f419ee7f459a40b37f97933a000000000000000000000000000000a9f170a408f216d2deee0afe4155bd2ccc000000000000000000000000000000000026c885fb46e8b2267939014cfbfed40000000000000000000000000000001eee81b23a887f299049b14c11e98460d600000000000000000000000000000000002a56ce41f6b0be13b9c26747621b82000000000000000000000000000000d5827d6338c78656c0d12ca1aea6ef2c7c00000000000000000000000000000000001aa98f2de3ddda547d8f6de4e725de000000000000000000000000000000a0814d2f92409f804ee22a8cca69bdb7d5000000000000000000000000000000000026816af753e0cbf7db9a9923adef16000000000000000000000000000000fbb1d6997b5d23a645387ecd06c989065d00000000000000000000000000000000000f7647619d0c12abc8c3b283b3ce0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000998e606b85c5cead84c0862da8b92c615900000000000000000000000000000000002318d5f69f5af0920ccaa0f0101b64000000000000000000000000000000926226a789de3cee48e168145cc72deeab0000000000000000000000000000000000164bc6a622bcfb7ca9a67b66ce2cd70000000000000000000000000000009839c8e671930d465cc97c57b3f3d8b23f0000000000000000000000000000000000240f3cc384fc18ad9ca1aba06c27bb00000000000000000000000000000015c6efd32b83911c1f56120e7445de84b4000000000000000000000000000000000015acb48253c5fd45111cfd63a6bd58000000000000000000000000000000339896d31527272d9d18c5e683ef6f5402000000000000000000000000000000000020aec98eaae400edba53702a9f7e68000000000000000000000000000000bdd2e2f58ae6eab7ef8c175a368e565b26000000000000000000000000000000000018cb6bf3e6c9035b9054032f9dbe5f0000000000000000000000000000002af2a92e9e02a14c57d3623e504405ab4f00000000000000000000000000000000002230196fc06f6157c5950e20d07ce50000000000000000000000000000000e07192e8b1419e486f2abd4bf1c320c8b00000000000000000000000000000000000f6ad6670d9f1d967b83cbb2794c05000000000000000000000000000000ce8b81dad0cd3b29a9b7378d438d9c754b0000000000000000000000000000000000273f0dd725391c3db822cbb41a02df000000000000000000000000000000de9fb5ff0979b73009be642ac0addfbb38000000000000000000000000000000000012b53f5971091a5e128aa0144c10b5000000000000000000000000000000cb4d43277694667f31042613193dd3c9c00000000000000000000000000000000000293c30f17d10b8db2463cc9bf679520000000000000000000000000000001ab232688e95e7d934b3d13c4320aea08e000000000000000000000000000000000009756ab204243029fa5ba2dc43e3ee000000000000000000000000000000eb762d3d5866d9e63fe4cda2dbbe5efba900000000000000000000000000000000000d2d6841ad825cc424b640d390d6cf00000000000000000000000000000025e665eaa02643f91ac6389efde791d6c10000000000000000000000000000000000293700fb33c7c5fc3a85c4348c6144000000000000000000000000000000c6563b6749d65e5bf302f13880f8c58d8700000000000000000000000000000000000cd295ad8e754f9db07a6180d3ce730000000000000000000000000000007806a182f21c26efa1eee3ba91ed39002c0000000000000000000000000000000000121fa0f580b0535f380c4e363d010700000000000000000000000000000064e04789d9ddfb557126e1238606ab061f000000000000000000000000000000000017a3fd43b5029c64098141cfef1bac0000000000000000000000000000005c4a65da584ba18a1f8b5b8356e3be171100000000000000000000000000000000000177365a1725df1205cf52e5e5dbc600000000000000000000000000000039e7b7b895c4c37ee8edd6151cc84b654300000000000000000000000000000000002e9b54939bc79862394a4dbddfe702000000000000000000000000000000662f383a582d6c48fe6c0fa368d43644ee00000000000000000000000000000000000d62d266d727f54bdfe1c64cfa1fa10000000000000000000000000000008e6f246eb16b12878f85afe1fdbb526613000000000000000000000000000000000001ea9f8eb66a9499b6f64b66b88069000000000000000000000000000000e46fde32efe923ecd23c3ffada18dc15de000000000000000000000000000000000019aa93fd38f3d80ea43a881910661a0000000000000000000000000000000eda24800e5fbaff938a30e8195d8165d600000000000000000000000000000000001219228acf9a82f7c461c8aa889d0400000000000000000000000000000031cfedd88afc9be58b701ff357b9efcc2600000000000000000000000000000000001763e67f9f2b215dfe722220c7636a0000000000000000000000000000003b17b7eb389e61a3e6b18e952d5667d8b2000000000000000000000000000000000008b8b04a4446749cc046a6ed2e7b48000000000000000000000000000000bc8b34fd47a7ca348c6e03cde308018fa900000000000000000000000000000000001402ce3d70bd621149fc10bc806aa7",
    "fields": [
      "0x0000000000000000000000000000000000000000000000000000000000000015",
      "0x000000000000000000000000000000000000000000000000000000000000000f",
      "0x0000000000000000000000000000000000000000000000000000000000000005",
      "0x000000000000000000000000000000d7dc514bb567591d252943a9999819bc2f",
      "0x00000000000000000000000000000000001e72c27a1ccccaeecb829dfede0700",
      "0x00000000000000000000000000000053b640195ab82344b0edd3beed84a0872f",
      "0x0000000000000000000000000000000000151a9d1214520f5b5d6780205018ab",
      "0x0000000000000000000000000000007e402eb302acc16d0c371395b3fbfa149a",
      "0x00000000000000000000000000000000001a4a5806d3f9b7945f0d56a3d08209",
      "0x000000000000000000000000000000c0b095886bb2d075c9190f14f7c4a4fbdb",
      "0x00000000000000000000000000000000001404952f835787d7017470721c86dc",
      "0x000000000000000000000000000000d8c051e0afc23def1bcaab1318253a2a71",
      "0x00000000000000000000000000000000001f716fc9795aba53e1840ab3b9a62b",
      "0x0000000000000000000000000000002a7aa84474834cc43a8ab71bfc78b46632",
      "0x00000000000000000000000000000000000c1946ccaffca0fa64c48711231173",
      "0x000000000000000000000000000000f0a369e3a63ec49f99a98690abca782f08",
      "0x00000000000000000000000000000000000228eb83767e0135ed4bc96a40d0ec",
      "0x000000000000000000000000000000e8eee1dd68346fed861602b29d39a6b178",
      "0x0000000000000000000000000000000000161b787ee3a1876ed244a6d7a50d02",
      "0x0000000000000000000000000000006c53b68ec6fd933d98d16f553cb0224828",
      "0x00000000000000000000000000000000001f35680d23fce59779c5f2c456e9e5",
      "0x000000000000000000000000000000bbbb7d80fe35dea3f229079f0033c74dd7",
      "0x00000000000000000000000000000000000547200ffd428144b9aa603fd6e849",
      "0x000000000000000000000000000000f472fd6715a63e57c2199cbe2a46910dc4",
      "0x0000000000000000000000000000000000115a8cb56959cfc6e1974ba3c28eca",
      "0x00000000000000000000000000000060b79c8f613e48341e9e5f1d45bd0e9763",
      "0x000000000000000000000000000000000015d0ad84e57564a72792bba51fcbb7",
      "0x000000000000000000000000000000759a532f9125622d9a671fe1e7f73432d0",
      "0x0000000000000000000000000000000000249d1353c3b387b45b73015df44f4f",
      "0x0000000000000000000000000000003cea00fcedd40c6deb1a3c8754925480cf",
      "0x00000000000000000000000000000000000e3b48d9f27dde604c15657844e2a2",
      "0x00000000000000000000000000000083d888387219028cb4c98a43baf64ff204",
      "0x00000000000000000000000000000000002d3591f419ee7f459a40b37f97933a",
      "0x000000000000000000000000000000a9f170a408f216d2deee0afe4155bd2ccc",
      "0x000000000000000000000000000000000026c885fb46e8b2267939014cfbfed4",
      "0x0000000000000000000000000000001eee81b23a887f299049b14c11e98460d6",
      "0x00000000000000000000000000000000002a56ce41f6b0be13b9c26747621b82",
      "0x000000000000000000000000000000d5827d6338c78656c0d12ca1aea6ef2c7c",
      "0x00000000000000000000000000000000001aa98f2de3ddda547d8f6de4e725de",
      "0x000000000000000000000000000000a0814d2f92409f804ee22a8cca69bdb7d5",
      "0x000000000000000000000000000000000026816af753e0cbf7db9a9923adef16",
      "0x000000000000000000000000000000fbb1d6997b5d23a645387ecd06c989065d",
      "0x00000000000000000000000000000000000f7647619d0c12abc8c3b283b3ce05",
      "0x0000000000000000000000000000000000000000000000000000000000000000",
      "0x0000000000000000000000000000000000000000000000000000000000000000",
      "0x0000000000000000000000000000000000000000000000000000000000000000",
      "0x0000000000000000000000000000000000000000000000000000000000000000",
      "0x0000000000000000000000000000000000000000000000000000000000000000",
      "0x0000000000000000000000000000000000000000000000000000000000000000",
      "0x0000000000000000000000000000000000000000000000000000000000000000",
      "0x0000000000000000000000000000000000000000000000000000000000000000",
      "0x0000000000000000000000000000000000000000000000000000000000000000",
      "0x0000000000000000000000000000000000000000000000000000000000000000",
      "0x0000000000000000000000000000000000000000000000000000000000000000",
      "0x0000000000000000000000000000000000000000000000000000000000000000",
      "0x0000000000000000000000000000000000000000000000000000000000000000",
      "0x0000000000000000000000000000000000000000000000000000000000000000",
      "0x0000000000000000000000000000000000000000000000000000000000000000",
      "0x0000000000000000000000000000000000000000000000000000000000000000",
      "0x0000000000000000000000000000000000000000000000000000000000000000",
      "0x0000000000000000000000000000000000000000000000000000000000000000",
      "0x0000000000000000000000000000000000000000000000000000000000000000",
      "0x0000000000000000000000000000000000000000000000000000000000000000",
      "0x000000000000000000000000000000998e606b85c5cead84c0862da8b92c6159",
      "0x00000000000000000000000000000000002318d5f69f5af0920ccaa0f0101b64",
      "0x000000000000000000000000000000926226a789de3cee48e168145cc72deeab",
      "0x0000000000000000000000000000000000164bc6a622bcfb7ca9a67b66ce2cd7",
      "0x0000000000000000000000000000009839c8e671930d465cc97c57b3f3d8b23f",
      "0x0000000000000000000000000000000000240f3cc384fc18ad9ca1aba06c27bb",
      "0x00000000000000000000000000000015c6efd32b83911c1f56120e7445de84b4",
      "0x000000000000000000000000000000000015acb48253c5fd45111cfd63a6bd58",
      "0x000000000000000000000000000000339896d31527272d9d18c5e683ef6f5402",
      "0x000000000000000000000000000000000020aec98eaae400edba53702a9f7e68",
      "0x000000000000000000000000000000bdd2e2f58ae6eab7ef8c175a368e565b26",
      "0x000000000000000000000000000000000018cb6bf3e6c9035b9054032f9dbe5f",
      "0x0000000000000000000000000000002af2a92e9e02a14c57d3623e504405ab4f",
      "0x00000000000000000000000000000000002230196fc06f6157c5950e20d07ce5",
      "0x0000000000000000000000000000000e07192e8b1419e486f2abd4bf1c320c8b",
      "0x00000000000000000000000000000000000f6ad6670d9f1d967b83cbb2794c05",
      "0x000000000000000000000000000000ce8b81dad0cd3b29a9b7378d438d9c754b",
      "0x0000000000000000000000000000000000273f0dd725391c3db822cbb41a02df",
      "0x000000000000000000000000000000de9fb5ff0979b73009be642ac0addfbb38",
      "0x000000000000000000000000000000000012b53f5971091a5e128aa0144c10b5",
      "0x000000000000000000000000000000cb4d43277694667f31042613193dd3c9c0",
      "0x0000000000000000000000000000000000293c30f17d10b8db2463cc9bf67952",
      "0x0000000000000000000000000000001ab232688e95e7d934b3d13c4320aea08e",
      "0x000000000000000000000000000000000009756ab204243029fa5ba2dc43e3ee",
      "0x000000000000000000000000000000eb762d3d5866d9e63fe4cda2dbbe5efba9",
      "0x00000000000000000000000000000000000d2d6841ad825cc424b640d390d6cf",
      "0x00000000000000000000000000000025e665eaa02643f91ac6389efde791d6c1",
      "0x0000000000000000000000000000000000293700fb33c7c5fc3a85c4348c6144",
      "0x000000000000000000000000000000c6563b6749d65e5bf302f13880f8c58d87",
      "0x00000000000000000000000000000000000cd295ad8e754f9db07a6180d3ce73",
      "0x0000000000000000000000000000007806a182f21c26efa1eee3ba91ed39002c",
      "0x0000000000000000000000000000000000121fa0f580b0535f380c4e363d0107",
      "0x00000000000000000000000000000064e04789d9ddfb557126e1238606ab061f",
      "0x000000000000000000000000000000000017a3fd43b5029c64098141cfef1bac",
      "0x0000000000000000000000000000005c4a65da584ba18a1f8b5b8356e3be1711",
      "0x00000000000000000000000000000000000177365a1725df1205cf52e5e5dbc6",
      "0x00000000000000000000000000000039e7b7b895c4c37ee8edd6151cc84b6543",
      "0x00000000000000000000000000000000002e9b54939bc79862394a4dbddfe702",
      "0x000000000000000000000000000000662f383a582d6c48fe6c0fa368d43644ee",
      "0x00000000000000000000000000000000000d62d266d727f54bdfe1c64cfa1fa1",
      "0x0000000000000000000000000000008e6f246eb16b12878f85afe1fdbb526613",
      "0x000000000000000000000000000000000001ea9f8eb66a9499b6f64b66b88069",
      "0x000000000000000000000000000000e46fde32efe923ecd23c3ffada18dc15de",
      "0x000000000000000000000000000000000019aa93fd38f3d80ea43a881910661a",
      "0x0000000000000000000000000000000eda24800e5fbaff938a30e8195d8165d6",
      "0x00000000000000000000000000000000001219228acf9a82f7c461c8aa889d04",
      "0x00000000000000000000000000000031cfedd88afc9be58b701ff357b9efcc26",
      "0x00000000000000000000000000000000001763e67f9f2b215dfe722220c7636a",
      "0x0000000000000000000000000000003b17b7eb389e61a3e6b18e952d5667d8b2",
      "0x000000000000000000000000000000000008b8b04a4446749cc046a6ed2e7b48",
      "0x000000000000000000000000000000bc8b34fd47a7ca348c6e03cde308018fa9",
      "0x00000000000000000000000000000000001402ce3d70bd621149fc10bc806aa7"
    ],
    "hash": "0f97ddc87b8f81cd3baecabf1a453c7cf0492a2ee89368d74efd23028b1a41a8"
  },
  "aztec_version": "5.1.0"
}
