{
  "_format": "hh-sol-artifact-1",
  "contractName": "ERC1155",
  "sourceName": "@openzeppelin/contracts/token/ERC1155/ERC1155.sol",
  "abi": [
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "uri_",
          "type": "string"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "account",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "operator",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "bool",
          "name": "approved",
          "type": "bool"
        }
      ],
      "name": "ApprovalForAll",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "operator",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "from",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "to",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256[]",
          "name": "ids",
          "type": "uint256[]"
        },
        {
          "indexed": false,
          "internalType": "uint256[]",
          "name": "values",
          "type": "uint256[]"
        }
      ],
      "name": "TransferBatch",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "operator",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "from",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "to",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "id",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "value",
          "type": "uint256"
        }
      ],
      "name": "TransferSingle",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "string",
          "name": "value",
          "type": "string"
        },
        {
          "indexed": true,
          "internalType": "uint256",
          "name": "id",
          "type": "uint256"
        }
      ],
      "name": "URI",
      "type": "event"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "account",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "id",
          "type": "uint256"
        }
      ],
      "name": "balanceOf",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address[]",
          "name": "accounts",
          "type": "address[]"
        },
        {
          "internalType": "uint256[]",
          "name": "ids",
          "type": "uint256[]"
        }
      ],
      "name": "balanceOfBatch",
      "outputs": [
        {
          "internalType": "uint256[]",
          "name": "",
          "type": "uint256[]"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "account",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "operator",
          "type": "address"
        }
      ],
      "name": "isApprovedForAll",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "from",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "to",
          "type": "address"
        },
        {
          "internalType": "uint256[]",
          "name": "ids",
          "type": "uint256[]"
        },
        {
          "internalType": "uint256[]",
          "name": "amounts",
          "type": "uint256[]"
        },
        {
          "internalType": "bytes",
          "name": "data",
          "type": "bytes"
        }
      ],
      "name": "safeBatchTransferFrom",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "from",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "to",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "id",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "amount",
          "type": "uint256"
        },
        {
          "internalType": "bytes",
          "name": "data",
          "type": "bytes"
        }
      ],
      "name": "safeTransferFrom",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "operator",
          "type": "address"
        },
        {
          "internalType": "bool",
          "name": "approved",
          "type": "bool"
        }
      ],
      "name": "setApprovalForAll",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes4",
          "name": "interfaceId",
          "type": "bytes4"
        }
      ],
      "name": "supportsInterface",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "name": "uri",
      "outputs": [
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    }
  ],
  "bytecode": "0x60806040523480156200001157600080fd5b50604051620017cc380380620017cc833981016040819052620000349162000105565b6200003f8162000046565b506200022e565b80516200005b9060029060208401906200005f565b5050565b8280546200006d90620001db565b90600052602060002090601f016020900481019282620000915760008555620000dc565b82601f10620000ac57805160ff1916838001178555620000dc565b82800160010185558215620000dc579182015b82811115620000dc578251825591602001919060010190620000bf565b50620000ea929150620000ee565b5090565b5b80821115620000ea5760008155600101620000ef565b6000602080838503121562000118578182fd5b82516001600160401b03808211156200012f578384fd5b818501915085601f83011262000143578384fd5b81518181111562000158576200015862000218565b604051601f8201601f19908116603f0116810190838211818310171562000183576200018362000218565b8160405282815288868487010111156200019b578687fd5b8693505b82841015620001be57848401860151818501870152928501926200019f565b82841115620001cf57868684830101525b98975050505050505050565b600181811c90821680620001f057607f821691505b602082108114156200021257634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052604160045260246000fd5b61158e806200023e6000396000f3fe608060405234801561001057600080fd5b50600436106100875760003560e01c80634e1273f41161005b5780634e1273f41461010a578063a22cb4651461012a578063e985e9c51461013d578063f242432a1461017957600080fd5b8062fdd58e1461008c57806301ffc9a7146100b25780630e89341c146100d55780632eb2c2d6146100f5575b600080fd5b61009f61009a3660046110ed565b61018c565b6040519081526020015b60405180910390f35b6100c56100c03660046111e1565b610235565b60405190151581526020016100a9565b6100e86100e3366004611220565b6102d2565b6040516100a9919061139f565b610108610103366004610faa565b610366565b005b61011d610118366004611116565b610408565b6040516100a9919061135e565b6101086101383660046110b3565b61057e565b6100c561014b366004610f78565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205460ff1690565b610108610187366004611050565b61058d565b60006001600160a01b03831661020f5760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a2061646472657373207a65726f206973206e6f742061207660448201527f616c6964206f776e65720000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b506000908152602081815260408083206001600160a01b03949094168352929052205490565b60006001600160e01b031982167fd9b67a2600000000000000000000000000000000000000000000000000000000148061029857506001600160e01b031982167f0e89341c00000000000000000000000000000000000000000000000000000000145b806102cc57507f01ffc9a7000000000000000000000000000000000000000000000000000000006001600160e01b03198316145b92915050565b6060600280546102e1906113ee565b80601f016020809104026020016040519081016040528092919081815260200182805461030d906113ee565b801561035a5780601f1061032f5761010080835404028352916020019161035a565b820191906000526020600020905b81548152906001019060200180831161033d57829003601f168201915b50505050509050919050565b6001600160a01b0385163314806103825750610382853361014b565b6103f45760405162461bcd60e51b815260206004820152602f60248201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60448201527f6572206e6f7220617070726f76656400000000000000000000000000000000006064820152608401610206565b6104018585858585610628565b5050505050565b606081518351146104815760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e67746860448201527f206d69736d6174636800000000000000000000000000000000000000000000006064820152608401610206565b6000835167ffffffffffffffff8111156104ab57634e487b7160e01b600052604160045260246000fd5b6040519080825280602002602001820160405280156104d4578160200160208202803683370190505b50905060005b84518110156105765761053b85828151811061050657634e487b7160e01b600052603260045260246000fd5b602002602001015185838151811061052e57634e487b7160e01b600052603260045260246000fd5b602002602001015161018c565b82828151811061055b57634e487b7160e01b600052603260045260246000fd5b602090810291909101015261056f81611456565b90506104da565b509392505050565b6105893383836108b7565b5050565b6001600160a01b0385163314806105a957506105a9853361014b565b61061b5760405162461bcd60e51b815260206004820152602f60248201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60448201527f6572206e6f7220617070726f76656400000000000000000000000000000000006064820152608401610206565b61040185858585856109ac565b815183511461069f5760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e6774682060448201527f6d69736d617463680000000000000000000000000000000000000000000000006064820152608401610206565b6001600160a01b0384166107035760405162461bcd60e51b815260206004820152602560248201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604482015264647265737360d81b6064820152608401610206565b3360005b845181101561084957600085828151811061073257634e487b7160e01b600052603260045260246000fd5b60200260200101519050600085838151811061075e57634e487b7160e01b600052603260045260246000fd5b602090810291909101810151600084815280835260408082206001600160a01b038e1683529093529190912054909150818110156107f15760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60448201526939103a3930b739b332b960b11b6064820152608401610206565b6000838152602081815260408083206001600160a01b038e8116855292528083208585039055908b1682528120805484929061082e9084906113d6565b925050819055505050508061084290611456565b9050610707565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610899929190611371565b60405180910390a46108af818787878787610b57565b505050505050565b816001600160a01b0316836001600160a01b0316141561093f5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c2073746174757360448201527f20666f722073656c6600000000000000000000000000000000000000000000006064820152608401610206565b6001600160a01b03838116600081815260016020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6001600160a01b038416610a105760405162461bcd60e51b815260206004820152602560248201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604482015264647265737360d81b6064820152608401610206565b336000610a1c85610d15565b90506000610a2985610d15565b90506000868152602081815260408083206001600160a01b038c16845290915290205485811015610aaf5760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60448201526939103a3930b739b332b960b11b6064820152608401610206565b6000878152602081815260408083206001600160a01b038d8116855292528083208985039055908a16825281208054889290610aec9084906113d6565b909155505060408051888152602081018890526001600160a01b03808b16928c821692918816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4610b4c848a8a8a8a8a610d6e565b505050505050505050565b6001600160a01b0384163b156108af5760405163bc197c8160e01b81526001600160a01b0385169063bc197c8190610b9b90899089908890889088906004016112bd565b602060405180830381600087803b158015610bb557600080fd5b505af1925050508015610be5575060408051601f3d908101601f19168201909252610be291810190611204565b60015b610c9b57610bf161149d565b806308c379a01415610c2b5750610c066114b5565b80610c115750610c2d565b8060405162461bcd60e51b8152600401610206919061139f565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e204552433131353560448201527f526563656976657220696d706c656d656e7465720000000000000000000000006064820152608401610206565b6001600160e01b0319811663bc197c8160e01b14610d0c5760405162461bcd60e51b815260206004820152602860248201527f455243313135353a204552433131353552656365697665722072656a656374656044820152676420746f6b656e7360c01b6064820152608401610206565b50505050505050565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110610d5d57634e487b7160e01b600052603260045260246000fd5b602090810291909101015292915050565b6001600160a01b0384163b156108af5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e6190610db2908990899088908890889060040161131b565b602060405180830381600087803b158015610dcc57600080fd5b505af1925050508015610dfc575060408051601f3d908101601f19168201909252610df991810190611204565b60015b610e0857610bf161149d565b6001600160e01b0319811663f23a6e6160e01b14610d0c5760405162461bcd60e51b815260206004820152602860248201527f455243313135353a204552433131353552656365697665722072656a656374656044820152676420746f6b656e7360c01b6064820152608401610206565b80356001600160a01b0381168114610e9057600080fd5b919050565b600082601f830112610ea5578081fd5b81356020610eb2826113b2565b604051610ebf8282611429565b8381528281019150858301600585901b87018401881015610ede578586fd5b855b85811015610efc57813584529284019290840190600101610ee0565b5090979650505050505050565b600082601f830112610f19578081fd5b813567ffffffffffffffff811115610f3357610f33611487565b604051610f4a601f8301601f191660200182611429565b818152846020838601011115610f5e578283fd5b816020850160208301379081016020019190915292915050565b60008060408385031215610f8a578182fd5b610f9383610e79565b9150610fa160208401610e79565b90509250929050565b600080600080600060a08688031215610fc1578081fd5b610fca86610e79565b9450610fd860208701610e79565b9350604086013567ffffffffffffffff80821115610ff4578283fd5b61100089838a01610e95565b94506060880135915080821115611015578283fd5b61102189838a01610e95565b93506080880135915080821115611036578283fd5b5061104388828901610f09565b9150509295509295909350565b600080600080600060a08688031215611067578081fd5b61107086610e79565b945061107e60208701610e79565b93506040860135925060608601359150608086013567ffffffffffffffff8111156110a7578182fd5b61104388828901610f09565b600080604083850312156110c5578182fd5b6110ce83610e79565b9150602083013580151581146110e2578182fd5b809150509250929050565b600080604083850312156110ff578182fd5b61110883610e79565b946020939093013593505050565b60008060408385031215611128578182fd5b823567ffffffffffffffff8082111561113f578384fd5b818501915085601f830112611152578384fd5b8135602061115f826113b2565b60405161116c8282611429565b8381528281019150858301600585901b870184018b101561118b578889fd5b8896505b848710156111b4576111a081610e79565b83526001969096019591830191830161118f565b50965050860135925050808211156111ca578283fd5b506111d785828601610e95565b9150509250929050565b6000602082840312156111f2578081fd5b81356111fd8161153f565b9392505050565b600060208284031215611215578081fd5b81516111fd8161153f565b600060208284031215611231578081fd5b5035919050565b6000815180845260208085019450808401835b838110156112675781518752958201959082019060010161124b565b509495945050505050565b60008151808452815b818110156112975760208185018101518683018201520161127b565b818111156112a85782602083870101525b50601f01601f19169290920160200192915050565b60006001600160a01b03808816835280871660208401525060a060408301526112e960a0830186611238565b82810360608401526112fb8186611238565b9050828103608084015261130f8185611272565b98975050505050505050565b60006001600160a01b03808816835280871660208401525084604083015283606083015260a0608083015261135360a0830184611272565b979650505050505050565b6020815260006111fd6020830184611238565b6040815260006113846040830185611238565b82810360208401526113968185611238565b95945050505050565b6020815260006111fd6020830184611272565b600067ffffffffffffffff8211156113cc576113cc611487565b5060051b60200190565b600082198211156113e9576113e9611471565b500190565b600181811c9082168061140257607f821691505b6020821081141561142357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8201601f1916810167ffffffffffffffff8111828210171561144f5761144f611487565b6040525050565b600060001982141561146a5761146a611471565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fd5b600060033d11156114b257600481823e5160e01c5b90565b600060443d10156114c35790565b6040516003193d81016004833e81513d67ffffffffffffffff81602484011181841117156114f357505050505090565b828501915081518181111561150b5750505050505090565b843d87010160208285010111156115255750505050505090565b61153460208286010187611429565b509095945050505050565b6001600160e01b03198116811461155557600080fd5b5056fea2646970667358221220101d0484e5725584bea369855012adfc4ba5740124df7e649512b517ba4787a064736f6c63430008040033",
  "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100875760003560e01c80634e1273f41161005b5780634e1273f41461010a578063a22cb4651461012a578063e985e9c51461013d578063f242432a1461017957600080fd5b8062fdd58e1461008c57806301ffc9a7146100b25780630e89341c146100d55780632eb2c2d6146100f5575b600080fd5b61009f61009a3660046110ed565b61018c565b6040519081526020015b60405180910390f35b6100c56100c03660046111e1565b610235565b60405190151581526020016100a9565b6100e86100e3366004611220565b6102d2565b6040516100a9919061139f565b610108610103366004610faa565b610366565b005b61011d610118366004611116565b610408565b6040516100a9919061135e565b6101086101383660046110b3565b61057e565b6100c561014b366004610f78565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205460ff1690565b610108610187366004611050565b61058d565b60006001600160a01b03831661020f5760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a2061646472657373207a65726f206973206e6f742061207660448201527f616c6964206f776e65720000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b506000908152602081815260408083206001600160a01b03949094168352929052205490565b60006001600160e01b031982167fd9b67a2600000000000000000000000000000000000000000000000000000000148061029857506001600160e01b031982167f0e89341c00000000000000000000000000000000000000000000000000000000145b806102cc57507f01ffc9a7000000000000000000000000000000000000000000000000000000006001600160e01b03198316145b92915050565b6060600280546102e1906113ee565b80601f016020809104026020016040519081016040528092919081815260200182805461030d906113ee565b801561035a5780601f1061032f5761010080835404028352916020019161035a565b820191906000526020600020905b81548152906001019060200180831161033d57829003601f168201915b50505050509050919050565b6001600160a01b0385163314806103825750610382853361014b565b6103f45760405162461bcd60e51b815260206004820152602f60248201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60448201527f6572206e6f7220617070726f76656400000000000000000000000000000000006064820152608401610206565b6104018585858585610628565b5050505050565b606081518351146104815760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e67746860448201527f206d69736d6174636800000000000000000000000000000000000000000000006064820152608401610206565b6000835167ffffffffffffffff8111156104ab57634e487b7160e01b600052604160045260246000fd5b6040519080825280602002602001820160405280156104d4578160200160208202803683370190505b50905060005b84518110156105765761053b85828151811061050657634e487b7160e01b600052603260045260246000fd5b602002602001015185838151811061052e57634e487b7160e01b600052603260045260246000fd5b602002602001015161018c565b82828151811061055b57634e487b7160e01b600052603260045260246000fd5b602090810291909101015261056f81611456565b90506104da565b509392505050565b6105893383836108b7565b5050565b6001600160a01b0385163314806105a957506105a9853361014b565b61061b5760405162461bcd60e51b815260206004820152602f60248201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60448201527f6572206e6f7220617070726f76656400000000000000000000000000000000006064820152608401610206565b61040185858585856109ac565b815183511461069f5760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e6774682060448201527f6d69736d617463680000000000000000000000000000000000000000000000006064820152608401610206565b6001600160a01b0384166107035760405162461bcd60e51b815260206004820152602560248201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604482015264647265737360d81b6064820152608401610206565b3360005b845181101561084957600085828151811061073257634e487b7160e01b600052603260045260246000fd5b60200260200101519050600085838151811061075e57634e487b7160e01b600052603260045260246000fd5b602090810291909101810151600084815280835260408082206001600160a01b038e1683529093529190912054909150818110156107f15760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60448201526939103a3930b739b332b960b11b6064820152608401610206565b6000838152602081815260408083206001600160a01b038e8116855292528083208585039055908b1682528120805484929061082e9084906113d6565b925050819055505050508061084290611456565b9050610707565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610899929190611371565b60405180910390a46108af818787878787610b57565b505050505050565b816001600160a01b0316836001600160a01b0316141561093f5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c2073746174757360448201527f20666f722073656c6600000000000000000000000000000000000000000000006064820152608401610206565b6001600160a01b03838116600081815260016020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6001600160a01b038416610a105760405162461bcd60e51b815260206004820152602560248201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604482015264647265737360d81b6064820152608401610206565b336000610a1c85610d15565b90506000610a2985610d15565b90506000868152602081815260408083206001600160a01b038c16845290915290205485811015610aaf5760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60448201526939103a3930b739b332b960b11b6064820152608401610206565b6000878152602081815260408083206001600160a01b038d8116855292528083208985039055908a16825281208054889290610aec9084906113d6565b909155505060408051888152602081018890526001600160a01b03808b16928c821692918816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4610b4c848a8a8a8a8a610d6e565b505050505050505050565b6001600160a01b0384163b156108af5760405163bc197c8160e01b81526001600160a01b0385169063bc197c8190610b9b90899089908890889088906004016112bd565b602060405180830381600087803b158015610bb557600080fd5b505af1925050508015610be5575060408051601f3d908101601f19168201909252610be291810190611204565b60015b610c9b57610bf161149d565b806308c379a01415610c2b5750610c066114b5565b80610c115750610c2d565b8060405162461bcd60e51b8152600401610206919061139f565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e204552433131353560448201527f526563656976657220696d706c656d656e7465720000000000000000000000006064820152608401610206565b6001600160e01b0319811663bc197c8160e01b14610d0c5760405162461bcd60e51b815260206004820152602860248201527f455243313135353a204552433131353552656365697665722072656a656374656044820152676420746f6b656e7360c01b6064820152608401610206565b50505050505050565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110610d5d57634e487b7160e01b600052603260045260246000fd5b602090810291909101015292915050565b6001600160a01b0384163b156108af5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e6190610db2908990899088908890889060040161131b565b602060405180830381600087803b158015610dcc57600080fd5b505af1925050508015610dfc575060408051601f3d908101601f19168201909252610df991810190611204565b60015b610e0857610bf161149d565b6001600160e01b0319811663f23a6e6160e01b14610d0c5760405162461bcd60e51b815260206004820152602860248201527f455243313135353a204552433131353552656365697665722072656a656374656044820152676420746f6b656e7360c01b6064820152608401610206565b80356001600160a01b0381168114610e9057600080fd5b919050565b600082601f830112610ea5578081fd5b81356020610eb2826113b2565b604051610ebf8282611429565b8381528281019150858301600585901b87018401881015610ede578586fd5b855b85811015610efc57813584529284019290840190600101610ee0565b5090979650505050505050565b600082601f830112610f19578081fd5b813567ffffffffffffffff811115610f3357610f33611487565b604051610f4a601f8301601f191660200182611429565b818152846020838601011115610f5e578283fd5b816020850160208301379081016020019190915292915050565b60008060408385031215610f8a578182fd5b610f9383610e79565b9150610fa160208401610e79565b90509250929050565b600080600080600060a08688031215610fc1578081fd5b610fca86610e79565b9450610fd860208701610e79565b9350604086013567ffffffffffffffff80821115610ff4578283fd5b61100089838a01610e95565b94506060880135915080821115611015578283fd5b61102189838a01610e95565b93506080880135915080821115611036578283fd5b5061104388828901610f09565b9150509295509295909350565b600080600080600060a08688031215611067578081fd5b61107086610e79565b945061107e60208701610e79565b93506040860135925060608601359150608086013567ffffffffffffffff8111156110a7578182fd5b61104388828901610f09565b600080604083850312156110c5578182fd5b6110ce83610e79565b9150602083013580151581146110e2578182fd5b809150509250929050565b600080604083850312156110ff578182fd5b61110883610e79565b946020939093013593505050565b60008060408385031215611128578182fd5b823567ffffffffffffffff8082111561113f578384fd5b818501915085601f830112611152578384fd5b8135602061115f826113b2565b60405161116c8282611429565b8381528281019150858301600585901b870184018b101561118b578889fd5b8896505b848710156111b4576111a081610e79565b83526001969096019591830191830161118f565b50965050860135925050808211156111ca578283fd5b506111d785828601610e95565b9150509250929050565b6000602082840312156111f2578081fd5b81356111fd8161153f565b9392505050565b600060208284031215611215578081fd5b81516111fd8161153f565b600060208284031215611231578081fd5b5035919050565b6000815180845260208085019450808401835b838110156112675781518752958201959082019060010161124b565b509495945050505050565b60008151808452815b818110156112975760208185018101518683018201520161127b565b818111156112a85782602083870101525b50601f01601f19169290920160200192915050565b60006001600160a01b03808816835280871660208401525060a060408301526112e960a0830186611238565b82810360608401526112fb8186611238565b9050828103608084015261130f8185611272565b98975050505050505050565b60006001600160a01b03808816835280871660208401525084604083015283606083015260a0608083015261135360a0830184611272565b979650505050505050565b6020815260006111fd6020830184611238565b6040815260006113846040830185611238565b82810360208401526113968185611238565b95945050505050565b6020815260006111fd6020830184611272565b600067ffffffffffffffff8211156113cc576113cc611487565b5060051b60200190565b600082198211156113e9576113e9611471565b500190565b600181811c9082168061140257607f821691505b6020821081141561142357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8201601f1916810167ffffffffffffffff8111828210171561144f5761144f611487565b6040525050565b600060001982141561146a5761146a611471565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fd5b600060033d11156114b257600481823e5160e01c5b90565b600060443d10156114c35790565b6040516003193d81016004833e81513d67ffffffffffffffff81602484011181841117156114f357505050505090565b828501915081518181111561150b5750505050505090565b843d87010160208285010111156115255750505050505090565b61153460208286010187611429565b509095945050505050565b6001600160e01b03198116811461155557600080fd5b5056fea2646970667358221220101d0484e5725584bea369855012adfc4ba5740124df7e649512b517ba4787a064736f6c63430008040033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
