{
  "_format": "hh-sol-artifact-1",
  "contractName": "ForwarderRegistry",
  "sourceName": "contracts/metatx/ForwarderRegistry.sol",
  "abi": [
    {
      "inputs": [],
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "target",
          "type": "address"
        }
      ],
      "name": "AddressEmptyCode",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "ECDSAInvalidSignature",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "length",
          "type": "uint256"
        }
      ],
      "name": "ECDSAInvalidSignatureLength",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "s",
          "type": "bytes32"
        }
      ],
      "name": "ECDSAInvalidSignatureS",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "FailedCall",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "sender",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "forwarder",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "target",
          "type": "address"
        }
      ],
      "name": "ForwarderNotApproved",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "balance",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "needed",
          "type": "uint256"
        }
      ],
      "name": "InsufficientBalance",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "InvalidEIP1271Signature",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "WrongSigner",
      "type": "error"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "sender",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "forwarder",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "target",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "bool",
          "name": "approved",
          "type": "bool"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "nonce",
          "type": "uint256"
        }
      ],
      "name": "ForwarderApproval",
      "type": "event"
    },
    {
      "inputs": [],
      "name": "DOMAIN_SEPARATOR",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "domainSeparator",
          "type": "bytes32"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes",
          "name": "signature",
          "type": "bytes"
        },
        {
          "internalType": "bool",
          "name": "isEIP1271Signature",
          "type": "bool"
        },
        {
          "internalType": "address",
          "name": "target",
          "type": "address"
        },
        {
          "internalType": "bytes",
          "name": "data",
          "type": "bytes"
        }
      ],
      "name": "approveAndForward",
      "outputs": [],
      "stateMutability": "payable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "target",
          "type": "address"
        },
        {
          "internalType": "bytes",
          "name": "data",
          "type": "bytes"
        }
      ],
      "name": "forward",
      "outputs": [],
      "stateMutability": "payable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "sender",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "forwarder",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "target",
          "type": "address"
        }
      ],
      "name": "getNonce",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "nonce",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "sender",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "forwarder",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "target",
          "type": "address"
        }
      ],
      "name": "isApprovedForwarder",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "name": "isTrustedForwarder",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "sender",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "forwarder",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "target",
          "type": "address"
        },
        {
          "internalType": "bool",
          "name": "approved",
          "type": "bool"
        },
        {
          "internalType": "bytes",
          "name": "signature",
          "type": "bytes"
        },
        {
          "internalType": "bool",
          "name": "isEIP1271Signature",
          "type": "bool"
        }
      ],
      "name": "setForwarderApproval",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "forwarder",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "target",
          "type": "address"
        },
        {
          "internalType": "bool",
          "name": "approved",
          "type": "bool"
        }
      ],
      "name": "setForwarderApproval",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    }
  ],
  "bytecode": "0x60c03460b95746608052602081017f8cad95687ba82c2ce50e74f7b754645e5117c3a5bec8151c0726d5857980a86681527f06a520fda4ca688235391b02e357c6a65eb2a3bb40a69c0199f3f7f9cccee04160408301524660608301523060808301526080825260a082019180831060018060401b0384111760a3578260405251902060a0526112d190816100bf823960805181610d73015260a05181610d990152f35b634e487b7160e01b600052604160045260246000fd5b600080fdfe6080604052600436101561001257600080fd5b60003560e01c8063019a202814610c1a5780630c695d17146108655780633644e51514610824578063572b6c05146107e15780636fadcf72146106a35780639438f7f314610224578063953135f5146101545763ae3c8c2d1461007457600080fd5b3461014f5760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261014f576100ab610cd9565b6100b3610cfc565b73ffffffffffffffffffffffffffffffffffffffff6100d0610d1f565b9216600052600060205273ffffffffffffffffffffffffffffffffffffffff6040600020911660005260205273ffffffffffffffffffffffffffffffffffffffff6040600020911660005260205260207effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60406000205416604051908152f35b600080fd5b3461014f5760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261014f5761018b610cd9565b610193610cfc565b90604435801515810361014f5761022292336000526000602052604060002073ffffffffffffffffffffffffffffffffffffffff8416600052602052604060002073ffffffffffffffffffffffffffffffffffffffff82166000526020526040600020927effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff845416933390610f0d565b005b60807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261014f5760043567ffffffffffffffff811161014f5761026e903690600401610d42565b602435801515810361014f57610282610d1f565b9160643567ffffffffffffffff811161014f576102a3903690600401610d42565b927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec36013560601c95866000526000602052604060002073ffffffffffffffffffffffffffffffffffffffff3316600052602052604060002073ffffffffffffffffffffffffffffffffffffffff87166000526020526040600020937effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8554169261034b610d70565b9060405160208101907f1d89f51cffda0adbc9dbff2f94eeaa6d10d8c3e27a39a69c4c7a29ebb3e1d28482528b604082015233606082015273ffffffffffffffffffffffffffffffffffffffff8b166080820152600160a08201528660c082015260c081526103bb60e082610e63565b519020906040519160208301937f190100000000000000000000000000000000000000000000000000000000000085526022840152604283015260428252610404606283610e63565b156105f95760209293916064915190207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8660405197889687957f1626ba7e000000000000000000000000000000000000000000000000000000008752600487015260406024870152816044870152868601376000858286010152011681010301818a5afa9081156105ed5760009161056b575b507fffffffff000000000000000000000000000000000000000000000000000000007f1626ba7e0000000000000000000000000000000000000000000000000000000091160361054157610222956104ff61050e9260018861053a975b853391610f0d565b60405194859360208501610e2d565b037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08101835282610e63565b3491610fb7565b7f5d52cbe30000000000000000000000000000000000000000000000000000000060005260046000fd5b6020813d6020116105e5575b8161058460209383610e63565b810103126105e15751907fffffffff00000000000000000000000000000000000000000000000000000000821682036105de57507fffffffff0000000000000000000000000000000000000000000000000000000061049a565b80fd5b5080fd5b3d9150610577565b6040513d6000823e3d90fd5b5190209061060681610ed3565b926106146040519485610e63565b818452368282011161014f578373ffffffffffffffffffffffffffffffffffffffff93600060208561065c968f999683610653980137840101526110dd565b90929192611119565b160361067957610222956104ff61050e9260018861053a976104f7565b7fa7932e6a0000000000000000000000000000000000000000000000000000000060005260046000fd5b60407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261014f576106d5610cd9565b60243567ffffffffffffffff811161014f576106f5903690600401610d42565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec92919236013560601c92836000526000602052604060002073ffffffffffffffffffffffffffffffffffffffff3316600052602052604060002073ffffffffffffffffffffffffffffffffffffffff841660005260205260406000205460f81c156107955761053a9061050e6102229560405194859360208501610e2d565b73ffffffffffffffffffffffffffffffffffffffff83857f865e4ca900000000000000000000000000000000000000000000000000000000600052600452336024521660445260646000fd5b3461014f5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261014f57610818610cd9565b50602060405160018152f35b3461014f5760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261014f57602061085d610d70565b604051908152f35b3461014f5760c07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261014f5761089c610cd9565b6108a4610cfc565b906108ad610d1f565b606435908115159384830361014f5760843567ffffffffffffffff811161014f576108dc903690600401610d42565b60a4359591861515870361014f5773ffffffffffffffffffffffffffffffffffffffff831690816000526000602052604060002073ffffffffffffffffffffffffffffffffffffffff8616600052602052604060002073ffffffffffffffffffffffffffffffffffffffff87166000526020526040600020987effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8a541698610981610d70565b9160405160208101917f1d89f51cffda0adbc9dbff2f94eeaa6d10d8c3e27a39a69c4c7a29ebb3e1d284835286604083015273ffffffffffffffffffffffffffffffffffffffff8a16606083015273ffffffffffffffffffffffffffffffffffffffff8b16608083015260a08201528b60c082015260c08152610a0560e082610e63565b519020906040519160208301937f190100000000000000000000000000000000000000000000000000000000000085526022840152604283015260428252610a4e606283610e63565b15610bb3579160646020949286945190207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f604051988997889687957f1626ba7e000000000000000000000000000000000000000000000000000000008752600487015260406024870152816044870152868601376000858286010152011681010301915afa9081156105ed57600091610b38575b507fffffffff000000000000000000000000000000000000000000000000000000007f1626ba7e000000000000000000000000000000000000000000000000000000009116036105415761022295610f0d565b6020813d602011610bab575b81610b5160209383610e63565b810103126105e15751907fffffffff00000000000000000000000000000000000000000000000000000000821682036105de57507fffffffff00000000000000000000000000000000000000000000000000000000610ae5565b3d9150610b44565b519020919290610bc282610ed3565b610bcf6040519182610e63565b828152368383011161014f5773ffffffffffffffffffffffffffffffffffffffff936000602085610c0b966106539683870137840101526110dd565b16036106795761022295610f0d565b3461014f5760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261014f57610c51610cd9565b610c59610cfc565b73ffffffffffffffffffffffffffffffffffffffff610c76610d1f565b9216600052600060205273ffffffffffffffffffffffffffffffffffffffff6040600020911660005260205273ffffffffffffffffffffffffffffffffffffffff60406000209116600052602052602060406000205460f81c6040519015158152f35b6004359073ffffffffffffffffffffffffffffffffffffffff8216820361014f57565b6024359073ffffffffffffffffffffffffffffffffffffffff8216820361014f57565b6044359073ffffffffffffffffffffffffffffffffffffffff8216820361014f57565b9181601f8401121561014f5782359167ffffffffffffffff831161014f576020838186019501011161014f57565b467f000000000000000000000000000000000000000000000000000000000000000003610dbb577f000000000000000000000000000000000000000000000000000000000000000090565b60405160208101907f8cad95687ba82c2ce50e74f7b754645e5117c3a5bec8151c0726d5857980a86682527f06a520fda4ca688235391b02e357c6a65eb2a3bb40a69c0199f3f7f9cccee041604082015246606082015230608082015260808152610e2760a082610e63565b51902090565b9160149392817fffffffffffffffffffffffffffffffffffffffff000000000000000000000000938237019160601b1681520190565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff821117610ea457604052565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b67ffffffffffffffff8111610ea457601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600186017effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1694151560f881901b7fff000000000000000000000000000000000000000000000000000000000000001695909517905560408051948552602085019590955273ffffffffffffffffffffffffffffffffffffffff92831694918316939216917f61036a3baab62925c6646f1eb84438957e2f9b3c52d084e099f955e04788b0489190a4565b9092919283471061100e5760008161100394956020839451920190855af13d15611006573d91610fe683610ed3565b92610ff46040519485610e63565b83523d6000602085013e611040565b90565b606091611040565b83477fcf4791810000000000000000000000000000000000000000000000000000000060005260045260245260446000fd5b9061107f575080511561105557602081519101fd5b7fd6bda2750000000000000000000000000000000000000000000000000000000060005260046000fd5b815115806110d4575b611090575090565b73ffffffffffffffffffffffffffffffffffffffff907f9996b315000000000000000000000000000000000000000000000000000000006000521660045260246000fd5b50803b15611088565b815191906041830361110e5761110792506020820151906060604084015193015160001a90611205565b9192909190565b505060009160029190565b91909160048110156111d6578061112f57509050565b600060018203611163577ff645eedf0000000000000000000000000000000000000000000000000000000060005260046000fd5b506002810361119a57827ffce698f70000000000000000000000000000000000000000000000000000000060005260045260246000fd5b90916003600092146111aa575050565b602492507fd78bce0c000000000000000000000000000000000000000000000000000000008252600452fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b91907f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0841161128f579160209360809260ff60009560405194855216868401526040830152606082015282805260015afa156105ed5760005173ffffffffffffffffffffffffffffffffffffffff8116156112835790600090600090565b50600090600190600090565b5050506000916003919056fea26469706673582212200cb427d0b6ba967b79e07dd757eb0df0bbd48ffbe72373ccc36acc2b6240c68664736f6c634300081e0033",
  "deployedBytecode": "0x6080604052600436101561001257600080fd5b60003560e01c8063019a202814610c1a5780630c695d17146108655780633644e51514610824578063572b6c05146107e15780636fadcf72146106a35780639438f7f314610224578063953135f5146101545763ae3c8c2d1461007457600080fd5b3461014f5760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261014f576100ab610cd9565b6100b3610cfc565b73ffffffffffffffffffffffffffffffffffffffff6100d0610d1f565b9216600052600060205273ffffffffffffffffffffffffffffffffffffffff6040600020911660005260205273ffffffffffffffffffffffffffffffffffffffff6040600020911660005260205260207effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60406000205416604051908152f35b600080fd5b3461014f5760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261014f5761018b610cd9565b610193610cfc565b90604435801515810361014f5761022292336000526000602052604060002073ffffffffffffffffffffffffffffffffffffffff8416600052602052604060002073ffffffffffffffffffffffffffffffffffffffff82166000526020526040600020927effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff845416933390610f0d565b005b60807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261014f5760043567ffffffffffffffff811161014f5761026e903690600401610d42565b602435801515810361014f57610282610d1f565b9160643567ffffffffffffffff811161014f576102a3903690600401610d42565b927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec36013560601c95866000526000602052604060002073ffffffffffffffffffffffffffffffffffffffff3316600052602052604060002073ffffffffffffffffffffffffffffffffffffffff87166000526020526040600020937effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8554169261034b610d70565b9060405160208101907f1d89f51cffda0adbc9dbff2f94eeaa6d10d8c3e27a39a69c4c7a29ebb3e1d28482528b604082015233606082015273ffffffffffffffffffffffffffffffffffffffff8b166080820152600160a08201528660c082015260c081526103bb60e082610e63565b519020906040519160208301937f190100000000000000000000000000000000000000000000000000000000000085526022840152604283015260428252610404606283610e63565b156105f95760209293916064915190207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8660405197889687957f1626ba7e000000000000000000000000000000000000000000000000000000008752600487015260406024870152816044870152868601376000858286010152011681010301818a5afa9081156105ed5760009161056b575b507fffffffff000000000000000000000000000000000000000000000000000000007f1626ba7e0000000000000000000000000000000000000000000000000000000091160361054157610222956104ff61050e9260018861053a975b853391610f0d565b60405194859360208501610e2d565b037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08101835282610e63565b3491610fb7565b7f5d52cbe30000000000000000000000000000000000000000000000000000000060005260046000fd5b6020813d6020116105e5575b8161058460209383610e63565b810103126105e15751907fffffffff00000000000000000000000000000000000000000000000000000000821682036105de57507fffffffff0000000000000000000000000000000000000000000000000000000061049a565b80fd5b5080fd5b3d9150610577565b6040513d6000823e3d90fd5b5190209061060681610ed3565b926106146040519485610e63565b818452368282011161014f578373ffffffffffffffffffffffffffffffffffffffff93600060208561065c968f999683610653980137840101526110dd565b90929192611119565b160361067957610222956104ff61050e9260018861053a976104f7565b7fa7932e6a0000000000000000000000000000000000000000000000000000000060005260046000fd5b60407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261014f576106d5610cd9565b60243567ffffffffffffffff811161014f576106f5903690600401610d42565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec92919236013560601c92836000526000602052604060002073ffffffffffffffffffffffffffffffffffffffff3316600052602052604060002073ffffffffffffffffffffffffffffffffffffffff841660005260205260406000205460f81c156107955761053a9061050e6102229560405194859360208501610e2d565b73ffffffffffffffffffffffffffffffffffffffff83857f865e4ca900000000000000000000000000000000000000000000000000000000600052600452336024521660445260646000fd5b3461014f5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261014f57610818610cd9565b50602060405160018152f35b3461014f5760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261014f57602061085d610d70565b604051908152f35b3461014f5760c07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261014f5761089c610cd9565b6108a4610cfc565b906108ad610d1f565b606435908115159384830361014f5760843567ffffffffffffffff811161014f576108dc903690600401610d42565b60a4359591861515870361014f5773ffffffffffffffffffffffffffffffffffffffff831690816000526000602052604060002073ffffffffffffffffffffffffffffffffffffffff8616600052602052604060002073ffffffffffffffffffffffffffffffffffffffff87166000526020526040600020987effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8a541698610981610d70565b9160405160208101917f1d89f51cffda0adbc9dbff2f94eeaa6d10d8c3e27a39a69c4c7a29ebb3e1d284835286604083015273ffffffffffffffffffffffffffffffffffffffff8a16606083015273ffffffffffffffffffffffffffffffffffffffff8b16608083015260a08201528b60c082015260c08152610a0560e082610e63565b519020906040519160208301937f190100000000000000000000000000000000000000000000000000000000000085526022840152604283015260428252610a4e606283610e63565b15610bb3579160646020949286945190207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f604051988997889687957f1626ba7e000000000000000000000000000000000000000000000000000000008752600487015260406024870152816044870152868601376000858286010152011681010301915afa9081156105ed57600091610b38575b507fffffffff000000000000000000000000000000000000000000000000000000007f1626ba7e000000000000000000000000000000000000000000000000000000009116036105415761022295610f0d565b6020813d602011610bab575b81610b5160209383610e63565b810103126105e15751907fffffffff00000000000000000000000000000000000000000000000000000000821682036105de57507fffffffff00000000000000000000000000000000000000000000000000000000610ae5565b3d9150610b44565b519020919290610bc282610ed3565b610bcf6040519182610e63565b828152368383011161014f5773ffffffffffffffffffffffffffffffffffffffff936000602085610c0b966106539683870137840101526110dd565b16036106795761022295610f0d565b3461014f5760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261014f57610c51610cd9565b610c59610cfc565b73ffffffffffffffffffffffffffffffffffffffff610c76610d1f565b9216600052600060205273ffffffffffffffffffffffffffffffffffffffff6040600020911660005260205273ffffffffffffffffffffffffffffffffffffffff60406000209116600052602052602060406000205460f81c6040519015158152f35b6004359073ffffffffffffffffffffffffffffffffffffffff8216820361014f57565b6024359073ffffffffffffffffffffffffffffffffffffffff8216820361014f57565b6044359073ffffffffffffffffffffffffffffffffffffffff8216820361014f57565b9181601f8401121561014f5782359167ffffffffffffffff831161014f576020838186019501011161014f57565b467f000000000000000000000000000000000000000000000000000000000000000003610dbb577f000000000000000000000000000000000000000000000000000000000000000090565b60405160208101907f8cad95687ba82c2ce50e74f7b754645e5117c3a5bec8151c0726d5857980a86682527f06a520fda4ca688235391b02e357c6a65eb2a3bb40a69c0199f3f7f9cccee041604082015246606082015230608082015260808152610e2760a082610e63565b51902090565b9160149392817fffffffffffffffffffffffffffffffffffffffff000000000000000000000000938237019160601b1681520190565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff821117610ea457604052565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b67ffffffffffffffff8111610ea457601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600186017effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1694151560f881901b7fff000000000000000000000000000000000000000000000000000000000000001695909517905560408051948552602085019590955273ffffffffffffffffffffffffffffffffffffffff92831694918316939216917f61036a3baab62925c6646f1eb84438957e2f9b3c52d084e099f955e04788b0489190a4565b9092919283471061100e5760008161100394956020839451920190855af13d15611006573d91610fe683610ed3565b92610ff46040519485610e63565b83523d6000602085013e611040565b90565b606091611040565b83477fcf4791810000000000000000000000000000000000000000000000000000000060005260045260245260446000fd5b9061107f575080511561105557602081519101fd5b7fd6bda2750000000000000000000000000000000000000000000000000000000060005260046000fd5b815115806110d4575b611090575090565b73ffffffffffffffffffffffffffffffffffffffff907f9996b315000000000000000000000000000000000000000000000000000000006000521660045260246000fd5b50803b15611088565b815191906041830361110e5761110792506020820151906060604084015193015160001a90611205565b9192909190565b505060009160029190565b91909160048110156111d6578061112f57509050565b600060018203611163577ff645eedf0000000000000000000000000000000000000000000000000000000060005260046000fd5b506002810361119a57827ffce698f70000000000000000000000000000000000000000000000000000000060005260045260246000fd5b90916003600092146111aa575050565b602492507fd78bce0c000000000000000000000000000000000000000000000000000000008252600452fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b91907f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0841161128f579160209360809260ff60009560405194855216868401526040830152606082015282805260015afa156105ed5760005173ffffffffffffffffffffffffffffffffffffffff8116156112835790600090600090565b50600090600190600090565b5050506000916003919056fea26469706673582212200cb427d0b6ba967b79e07dd757eb0df0bbd48ffbe72373ccc36acc2b6240c68664736f6c634300081e0033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
