{
  "_format": "hh-sol-artifact-1",
  "contractName": "SurplusBeneficiary",
  "sourceName": "contracts/SurplusBeneficiary.sol",
  "abi": [
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "tokenArg",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "feeDistributorArg",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "treasuryArg",
          "type": "address"
        },
        {
          "internalType": "uint24",
          "name": "treasuryPercentageArg",
          "type": "uint24"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "amountToTreasury",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "amountToFeeDistributor",
          "type": "uint256"
        }
      ],
      "name": "Dispatch",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "address",
          "name": "oldValue",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "address",
          "name": "newValue",
          "type": "address"
        }
      ],
      "name": "FeeDistributorChanged",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "previousOwner",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "newOwner",
          "type": "address"
        }
      ],
      "name": "OwnershipTransferred",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "address",
          "name": "oldValue",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "address",
          "name": "newValue",
          "type": "address"
        }
      ],
      "name": "TreasuryChanged",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "uint24",
          "name": "oldValue",
          "type": "uint24"
        },
        {
          "indexed": false,
          "internalType": "uint24",
          "name": "newValue",
          "type": "uint24"
        }
      ],
      "name": "TreasuryPercentageChanged",
      "type": "event"
    },
    {
      "inputs": [],
      "name": "dispatch",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getFeeDistributor",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getToken",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getTreasury",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getTreasuryPercentage",
      "outputs": [
        {
          "internalType": "uint24",
          "name": "",
          "type": "uint24"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "owner",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "renounceOwnership",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "feeDistributorArg",
          "type": "address"
        }
      ],
      "name": "setFeeDistributor",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "treasuryArg",
          "type": "address"
        }
      ],
      "name": "setTreasury",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint24",
          "name": "treasuryPercentageArg",
          "type": "uint24"
        }
      ],
      "name": "setTreasuryPercentage",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "newOwner",
          "type": "address"
        }
      ],
      "name": "transferOwnership",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    }
  ],
  "bytecode": "0x60806040523480156200001157600080fd5b5060405162001a1e38038062001a1e833981016040819052620000349162000599565b600160009081556200004562000120565b600180546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350620000b2846001600160a01b03166200012460201b62000a2e1760201c565b620000da5760405162461bcd60e51b8152600401620000d190620006b5565b60405180910390fd5b600280546001600160a01b0319166001600160a01b03861617905562000100836200012e565b6200010b8262000316565b620001168162000435565b505050506200072d565b3390565b803b15155b919050565b6200013862000120565b6001600160a01b03166200014b6200054e565b6001600160a01b03161462000196576040805162461bcd60e51b81526020600482018190526024820152600080516020620019fe833981519152604482015290519081900360640190fd5b6002546001600160a01b0390811690620001be90831662000124602090811b62000a2e17901c565b620001dd5760405162461bcd60e51b8152600401620000d190620006d6565b806001600160a01b0316826001600160a01b031663fc0c546a6040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156200022357600080fd5b505af115801562000238573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200025e919062000575565b6001600160a01b031614620002875760405162461bcd60e51b8152600401620000d19062000695565b6003546001600160a01b03908116908316811415620002ba5760405162461bcd60e51b8152600401620000d19062000675565b600380546001600160a01b0319166001600160a01b0385161790556040517f1fb7c52dab61e9e9813f7aac38f62f9ae8ee57bf319134f2bde8758a7df5893d90620003099083908690620005fd565b60405180910390a1505050565b6200032062000120565b6001600160a01b0316620003336200054e565b6001600160a01b0316146200037e576040805162461bcd60e51b81526020600482018190526024820152600080516020620019fe833981519152604482015290519081900360640190fd5b6001600160a01b038116620003a75760405162461bcd60e51b8152600401620000d19062000656565b6004546001600160a01b03908116908216811415620003da5760405162461bcd60e51b8152600401620000d19062000617565b600480546001600160a01b0319166001600160a01b0384161790556040517f8c3aa5f43a388513435861bf27dfad7829cd248696fed367c62d441f6295449690620004299083908590620005fd565b60405180910390a15050565b6200043f62000120565b6001600160a01b0316620004526200054e565b6001600160a01b0316146200049d576040805162461bcd60e51b81526020600482018190526024820152600080516020620019fe833981519152604482015290519081900360640190fd5b620f42408162ffffff161115620004c85760405162461bcd60e51b8152600401620000d190620006f7565b60045462ffffff600160a01b9091048116908216811415620004fe5760405162461bcd60e51b8152600401620000d19062000636565b6004805462ffffff60a01b1916600160a01b62ffffff8516021790556040517f0fdd42c62b51ceb8ffd8cdf982eeb7cf3f86a3ef73c05ac03e1a08a9b5e8a2009062000429908390859062000717565b6001546001600160a01b031690565b80516001600160a01b03811681146200012957600080fd5b60006020828403121562000587578081fd5b62000592826200055d565b9392505050565b60008060008060808587031215620005af578283fd5b620005ba856200055d565b9350620005ca602086016200055d565b9250620005da604086016200055d565b9150606085015162ffffff81168114620005f2578182fd5b939692955090935050565b6001600160a01b0392831681529116602082015260400190565b60208082526005908201526414d097d4d560da1b604082015260600190565b602080825260069082015265053425f5354560d41b604082015260600190565b60208082526005908201526429a12faa2d60d91b604082015260600190565b60208082526006908201526514d097d4d19160d21b604082015260600190565b60208082526006908201526553425f544e4d60d01b604082015260600190565b60208082526007908201526653425f54414e4360c81b604082015260600190565b60208082526007908201526653425f46444e4360c81b604082015260600190565b60208082526006908201526553425f54504f60d01b604082015260600190565b62ffffff92831681529116602082015260400190565b6112c1806200073d6000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c80638da5cb5b116100715780638da5cb5b14610106578063c89131731461010e578063ccfc2e8d14610116578063e9c4a3ac14610129578063f0f4426014610131578063f2fde38b14610144576100a9565b806321df0da7146100ae57806324f33a5b146100cc5780633b19e84a146100e1578063715018a6146100e957806386be65d8146100f3575b600080fd5b6100b6610157565b6040516100c39190611005565b60405180910390f35b6100d4610166565b6040516100c39190611173565b6100b6610178565b6100f1610187565b005b6100f1610101366004610fca565b610233565b6100b6610353565b6100b6610362565b6100f1610124366004610f72565b610371565b6100f1610536565b6100f161013f366004610f72565b610826565b6100f1610152366004610f72565b61092b565b6002546001600160a01b031690565b600454600160a01b900462ffffff1690565b6004546001600160a01b031690565b61018f610a34565b6001600160a01b03166101a0610353565b6001600160a01b0316146101e9576040805162461bcd60e51b8152602060048201819052602482015260008051602061120c833981519152604482015290519081900360640190fd5b6001546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600180546001600160a01b0319169055565b61023b610a34565b6001600160a01b031661024c610353565b6001600160a01b031614610295576040805162461bcd60e51b8152602060048201819052602482015260008051602061120c833981519152604482015290519081900360640190fd5b620f42408162ffffff1611156102c65760405162461bcd60e51b81526004016102bd90611153565b60405180910390fd5b60045462ffffff600160a01b90910481169082168114156102f95760405162461bcd60e51b81526004016102bd90611052565b6004805462ffffff60a01b1916600160a01b62ffffff8516021790556040517f0fdd42c62b51ceb8ffd8cdf982eeb7cf3f86a3ef73c05ac03e1a08a9b5e8a200906103479083908590611183565b60405180910390a15050565b6001546001600160a01b031690565b6003546001600160a01b031690565b610379610a34565b6001600160a01b031661038a610353565b6001600160a01b0316146103d3576040805162461bcd60e51b8152602060048201819052602482015260008051602061120c833981519152604482015290519081900360640190fd5b6002546001600160a01b03908116906103ed908316610a2e565b6104095760405162461bcd60e51b81526004016102bd90611132565b806001600160a01b0316826001600160a01b031663fc0c546a6040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561044e57600080fd5b505af1158015610462573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104869190610f8e565b6001600160a01b0316146104ac5760405162461bcd60e51b81526004016102bd90611112565b6003546001600160a01b039081169083168114156104dc5760405162461bcd60e51b81526004016102bd906110f2565b600380546001600160a01b0319166001600160a01b0385161790556040517f1fb7c52dab61e9e9813f7aac38f62f9ae8ee57bf319134f2bde8758a7df5893d906105299083908690611019565b60405180910390a1505050565b6002600054141561058e576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b6002600081815590546040516370a0823160e01b81526001600160a01b03909116919082906370a08231906105c7903090600401611005565b60206040518083038186803b1580156105df57600080fd5b505afa1580156105f3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106179190610fed565b9050806106365760405162461bcd60e51b81526004016102bd90611092565b600454600090610657908390600160a01b900462ffffff16620f4240610a38565b90508015610677576004546106779084906001600160a01b031683610ae8565b81811461073a576003546001600160a01b031661069e84826106998686610b3f565b610b9c565b60405163226bf2d160e21b81526001600160a01b038216906389afcb44906106ca908790600401611005565b602060405180830381600087803b1580156106e457600080fd5b505af11580156106f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071c9190610faa565b6107385760405162461bcd60e51b81526004016102bd906110b2565b505b6040516370a0823160e01b81526000906001600160a01b038516906370a0823190610769903090600401611005565b60206040518083038186803b15801561078157600080fd5b505afa158015610795573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107b99190610fed565b905080156107d95760405162461bcd60e51b81526004016102bd90611072565b7fa66b62fcfc4f2cd2a0ab2a07eb8e19b90c5872d8bc4a4338c18038e8d444dd25826108058582610b3f565b604051610813929190611199565b60405180910390a1505060016000555050565b61082e610a34565b6001600160a01b031661083f610353565b6001600160a01b031614610888576040805162461bcd60e51b8152602060048201819052602482015260008051602061120c833981519152604482015290519081900360640190fd5b6001600160a01b0381166108ae5760405162461bcd60e51b81526004016102bd906110d3565b6004546001600160a01b039081169082168114156108de5760405162461bcd60e51b81526004016102bd90611033565b600480546001600160a01b0319166001600160a01b0384161790556040517f8c3aa5f43a388513435861bf27dfad7829cd248696fed367c62d441f62954496906103479083908590611019565b610933610a34565b6001600160a01b0316610944610353565b6001600160a01b03161461098d576040805162461bcd60e51b8152602060048201819052602482015260008051602061120c833981519152604482015290519081900360640190fd5b6001600160a01b0381166109d25760405162461bcd60e51b81526004018080602001828103825260268152602001806111c06026913960400191505060405180910390fd5b6001546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600180546001600160a01b0319166001600160a01b0392909216919091179055565b3b151590565b3390565b6000808060001985870986860292508281109083900303905080610a6e5760008411610a6357600080fd5b508290049050610ae1565b808411610a7a57600080fd5b6000848688096000868103871696879004966002600389028118808a02820302808a02820302808a02820302808a02820302808a02820302808a02909103029181900381900460010186841190950394909402919094039290920491909117919091029150505b9392505050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610b3a908490610cab565b505050565b600082821115610b96576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b801580610c22575060408051636eb1769f60e11b81523060048201526001600160a01b03848116602483015291519185169163dd62ed3e91604480820192602092909190829003018186803b158015610bf457600080fd5b505afa158015610c08573d6000803e3d6000fd5b505050506040513d6020811015610c1e57600080fd5b5051155b610c5d5760405162461bcd60e51b81526004018080602001828103825260368152602001806112566036913960400191505060405180910390fd5b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663095ea7b360e01b179052610b3a9084905b6000610d00826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316610d5c9092919063ffffffff16565b805190915015610b3a57808060200190516020811015610d1f57600080fd5b5051610b3a5760405162461bcd60e51b815260040180806020018281038252602a81526020018061122c602a913960400191505060405180910390fd5b6060610d6b8484600085610d73565b949350505050565b606082471015610db45760405162461bcd60e51b81526004018080602001828103825260268152602001806111e66026913960400191505060405180910390fd5b610dbd85610a2e565b610e0e576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b600080866001600160a01b031685876040518082805190602001908083835b60208310610e4c5780518252601f199092019160209182019101610e2d565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114610eae576040519150601f19603f3d011682016040523d82523d6000602084013e610eb3565b606091505b5091509150610ec3828286610ece565b979650505050505050565b60608315610edd575081610ae1565b825115610eed5782518084602001fd5b8160405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610f37578181015183820152602001610f1f565b50505050905090810190601f168015610f645780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b600060208284031215610f83578081fd5b8135610ae1816111a7565b600060208284031215610f9f578081fd5b8151610ae1816111a7565b600060208284031215610fbb578081fd5b81518015158114610ae1578182fd5b600060208284031215610fdb578081fd5b813562ffffff81168114610ae1578182fd5b600060208284031215610ffe578081fd5b5051919050565b6001600160a01b0391909116815260200190565b6001600160a01b0392831681529116602082015260400190565b60208082526005908201526414d097d4d560da1b604082015260600190565b602080825260069082015265053425f5354560d41b604082015260600190565b60208082526006908201526529a12fa1272d60d11b604082015260600190565b60208082526006908201526529a12faa20ad60d11b604082015260600190565b60208082526007908201526629a12fa322212360c91b604082015260600190565b60208082526005908201526429a12faa2d60d91b604082015260600190565b60208082526006908201526514d097d4d19160d21b604082015260600190565b60208082526006908201526553425f544e4d60d01b604082015260600190565b60208082526007908201526653425f46444e4360c81b604082015260600190565b60208082526006908201526553425f54504f60d01b604082015260600190565b62ffffff91909116815260200190565b62ffffff92831681529116602082015260400190565b918252602082015260400190565b6001600160a01b03811681146111bc57600080fd5b5056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373416464726573733a20696e73756666696369656e742062616c616e636520666f722063616c6c4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725361666545524332303a204552433230206f7065726174696f6e20646964206e6f7420737563636565645361666545524332303a20617070726f76652066726f6d206e6f6e2d7a65726f20746f206e6f6e2d7a65726f20616c6c6f77616e6365a26469706673582212206fcfc9d686cd76749e04f3e9280c105c314f561bbac59582175c35cad4dddb8764736f6c634300070600334f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572",
  "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100a95760003560e01c80638da5cb5b116100715780638da5cb5b14610106578063c89131731461010e578063ccfc2e8d14610116578063e9c4a3ac14610129578063f0f4426014610131578063f2fde38b14610144576100a9565b806321df0da7146100ae57806324f33a5b146100cc5780633b19e84a146100e1578063715018a6146100e957806386be65d8146100f3575b600080fd5b6100b6610157565b6040516100c39190611005565b60405180910390f35b6100d4610166565b6040516100c39190611173565b6100b6610178565b6100f1610187565b005b6100f1610101366004610fca565b610233565b6100b6610353565b6100b6610362565b6100f1610124366004610f72565b610371565b6100f1610536565b6100f161013f366004610f72565b610826565b6100f1610152366004610f72565b61092b565b6002546001600160a01b031690565b600454600160a01b900462ffffff1690565b6004546001600160a01b031690565b61018f610a34565b6001600160a01b03166101a0610353565b6001600160a01b0316146101e9576040805162461bcd60e51b8152602060048201819052602482015260008051602061120c833981519152604482015290519081900360640190fd5b6001546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600180546001600160a01b0319169055565b61023b610a34565b6001600160a01b031661024c610353565b6001600160a01b031614610295576040805162461bcd60e51b8152602060048201819052602482015260008051602061120c833981519152604482015290519081900360640190fd5b620f42408162ffffff1611156102c65760405162461bcd60e51b81526004016102bd90611153565b60405180910390fd5b60045462ffffff600160a01b90910481169082168114156102f95760405162461bcd60e51b81526004016102bd90611052565b6004805462ffffff60a01b1916600160a01b62ffffff8516021790556040517f0fdd42c62b51ceb8ffd8cdf982eeb7cf3f86a3ef73c05ac03e1a08a9b5e8a200906103479083908590611183565b60405180910390a15050565b6001546001600160a01b031690565b6003546001600160a01b031690565b610379610a34565b6001600160a01b031661038a610353565b6001600160a01b0316146103d3576040805162461bcd60e51b8152602060048201819052602482015260008051602061120c833981519152604482015290519081900360640190fd5b6002546001600160a01b03908116906103ed908316610a2e565b6104095760405162461bcd60e51b81526004016102bd90611132565b806001600160a01b0316826001600160a01b031663fc0c546a6040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561044e57600080fd5b505af1158015610462573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104869190610f8e565b6001600160a01b0316146104ac5760405162461bcd60e51b81526004016102bd90611112565b6003546001600160a01b039081169083168114156104dc5760405162461bcd60e51b81526004016102bd906110f2565b600380546001600160a01b0319166001600160a01b0385161790556040517f1fb7c52dab61e9e9813f7aac38f62f9ae8ee57bf319134f2bde8758a7df5893d906105299083908690611019565b60405180910390a1505050565b6002600054141561058e576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b6002600081815590546040516370a0823160e01b81526001600160a01b03909116919082906370a08231906105c7903090600401611005565b60206040518083038186803b1580156105df57600080fd5b505afa1580156105f3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106179190610fed565b9050806106365760405162461bcd60e51b81526004016102bd90611092565b600454600090610657908390600160a01b900462ffffff16620f4240610a38565b90508015610677576004546106779084906001600160a01b031683610ae8565b81811461073a576003546001600160a01b031661069e84826106998686610b3f565b610b9c565b60405163226bf2d160e21b81526001600160a01b038216906389afcb44906106ca908790600401611005565b602060405180830381600087803b1580156106e457600080fd5b505af11580156106f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071c9190610faa565b6107385760405162461bcd60e51b81526004016102bd906110b2565b505b6040516370a0823160e01b81526000906001600160a01b038516906370a0823190610769903090600401611005565b60206040518083038186803b15801561078157600080fd5b505afa158015610795573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107b99190610fed565b905080156107d95760405162461bcd60e51b81526004016102bd90611072565b7fa66b62fcfc4f2cd2a0ab2a07eb8e19b90c5872d8bc4a4338c18038e8d444dd25826108058582610b3f565b604051610813929190611199565b60405180910390a1505060016000555050565b61082e610a34565b6001600160a01b031661083f610353565b6001600160a01b031614610888576040805162461bcd60e51b8152602060048201819052602482015260008051602061120c833981519152604482015290519081900360640190fd5b6001600160a01b0381166108ae5760405162461bcd60e51b81526004016102bd906110d3565b6004546001600160a01b039081169082168114156108de5760405162461bcd60e51b81526004016102bd90611033565b600480546001600160a01b0319166001600160a01b0384161790556040517f8c3aa5f43a388513435861bf27dfad7829cd248696fed367c62d441f62954496906103479083908590611019565b610933610a34565b6001600160a01b0316610944610353565b6001600160a01b03161461098d576040805162461bcd60e51b8152602060048201819052602482015260008051602061120c833981519152604482015290519081900360640190fd5b6001600160a01b0381166109d25760405162461bcd60e51b81526004018080602001828103825260268152602001806111c06026913960400191505060405180910390fd5b6001546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600180546001600160a01b0319166001600160a01b0392909216919091179055565b3b151590565b3390565b6000808060001985870986860292508281109083900303905080610a6e5760008411610a6357600080fd5b508290049050610ae1565b808411610a7a57600080fd5b6000848688096000868103871696879004966002600389028118808a02820302808a02820302808a02820302808a02820302808a02820302808a02909103029181900381900460010186841190950394909402919094039290920491909117919091029150505b9392505050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610b3a908490610cab565b505050565b600082821115610b96576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b801580610c22575060408051636eb1769f60e11b81523060048201526001600160a01b03848116602483015291519185169163dd62ed3e91604480820192602092909190829003018186803b158015610bf457600080fd5b505afa158015610c08573d6000803e3d6000fd5b505050506040513d6020811015610c1e57600080fd5b5051155b610c5d5760405162461bcd60e51b81526004018080602001828103825260368152602001806112566036913960400191505060405180910390fd5b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663095ea7b360e01b179052610b3a9084905b6000610d00826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316610d5c9092919063ffffffff16565b805190915015610b3a57808060200190516020811015610d1f57600080fd5b5051610b3a5760405162461bcd60e51b815260040180806020018281038252602a81526020018061122c602a913960400191505060405180910390fd5b6060610d6b8484600085610d73565b949350505050565b606082471015610db45760405162461bcd60e51b81526004018080602001828103825260268152602001806111e66026913960400191505060405180910390fd5b610dbd85610a2e565b610e0e576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b600080866001600160a01b031685876040518082805190602001908083835b60208310610e4c5780518252601f199092019160209182019101610e2d565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114610eae576040519150601f19603f3d011682016040523d82523d6000602084013e610eb3565b606091505b5091509150610ec3828286610ece565b979650505050505050565b60608315610edd575081610ae1565b825115610eed5782518084602001fd5b8160405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610f37578181015183820152602001610f1f565b50505050905090810190601f168015610f645780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b600060208284031215610f83578081fd5b8135610ae1816111a7565b600060208284031215610f9f578081fd5b8151610ae1816111a7565b600060208284031215610fbb578081fd5b81518015158114610ae1578182fd5b600060208284031215610fdb578081fd5b813562ffffff81168114610ae1578182fd5b600060208284031215610ffe578081fd5b5051919050565b6001600160a01b0391909116815260200190565b6001600160a01b0392831681529116602082015260400190565b60208082526005908201526414d097d4d560da1b604082015260600190565b602080825260069082015265053425f5354560d41b604082015260600190565b60208082526006908201526529a12fa1272d60d11b604082015260600190565b60208082526006908201526529a12faa20ad60d11b604082015260600190565b60208082526007908201526629a12fa322212360c91b604082015260600190565b60208082526005908201526429a12faa2d60d91b604082015260600190565b60208082526006908201526514d097d4d19160d21b604082015260600190565b60208082526006908201526553425f544e4d60d01b604082015260600190565b60208082526007908201526653425f46444e4360c81b604082015260600190565b60208082526006908201526553425f54504f60d01b604082015260600190565b62ffffff91909116815260200190565b62ffffff92831681529116602082015260400190565b918252602082015260400190565b6001600160a01b03811681146111bc57600080fd5b5056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373416464726573733a20696e73756666696369656e742062616c616e636520666f722063616c6c4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725361666545524332303a204552433230206f7065726174696f6e20646964206e6f7420737563636565645361666545524332303a20617070726f76652066726f6d206e6f6e2d7a65726f20746f206e6f6e2d7a65726f20616c6c6f77616e6365a26469706673582212206fcfc9d686cd76749e04f3e9280c105c314f561bbac59582175c35cad4dddb8764736f6c63430007060033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
