{
  "_format": "hh-sol-artifact-1",
  "contractName": "TestERC1155",
  "sourceName": "contracts/test/TestERC1155.sol",
  "abi": [
    {
      "inputs": [],
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "sender",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "balance",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "needed",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "tokenId",
          "type": "uint256"
        }
      ],
      "name": "ERC1155InsufficientBalance",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "approver",
          "type": "address"
        }
      ],
      "name": "ERC1155InvalidApprover",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "idsLength",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "valuesLength",
          "type": "uint256"
        }
      ],
      "name": "ERC1155InvalidArrayLength",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "operator",
          "type": "address"
        }
      ],
      "name": "ERC1155InvalidOperator",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "receiver",
          "type": "address"
        }
      ],
      "name": "ERC1155InvalidReceiver",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "sender",
          "type": "address"
        }
      ],
      "name": "ERC1155InvalidSender",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "operator",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "owner",
          "type": "address"
        }
      ],
      "name": "ERC1155MissingApprovalForAll",
      "type": "error"
    },
    {
      "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": "to",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "id",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "value",
          "type": "uint256"
        },
        {
          "internalType": "bytes",
          "name": "data",
          "type": "bytes"
        }
      ],
      "name": "mint",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "from",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "to",
          "type": "address"
        },
        {
          "internalType": "uint256[]",
          "name": "ids",
          "type": "uint256[]"
        },
        {
          "internalType": "uint256[]",
          "name": "values",
          "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": "value",
          "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": "0x608060405234801561001057600080fd5b5060408051808201909152600e81526d68747470733a2f2f666f6f62616160901b602082015261003f81610045565b506101b2565b600261005182826100f4565b5050565b634e487b7160e01b600052604160045260246000fd5b600181811c9082168061007f57607f821691505b60208210810361009f57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156100ef57806000526020600020601f840160051c810160208510156100cc5750805b601f840160051c820191505b818110156100ec57600081556001016100d8565b50505b505050565b81516001600160401b0381111561010d5761010d610055565b6101218161011b845461006b565b846100a5565b6020601f821160018114610155576000831561013d5750848201515b600019600385901b1c1916600184901b1784556100ec565b600084815260208120601f198516915b828110156101855787850151825560209485019460019092019101610165565b50848210156101a35786840151600019600387901b60f8161c191681555b50505050600190811b01905550565b611199806101c16000396000f3fe608060405234801561001057600080fd5b50600436106100925760003560e01c80634e1273f4116100665780634e1273f414610115578063731133e914610135578063a22cb46514610148578063e985e9c51461015b578063f242432a1461016e57600080fd5b8062fdd58e1461009757806301ffc9a7146100bd5780630e89341c146100e05780632eb2c2d614610100575b600080fd5b6100aa6100a5366004610aec565b610181565b6040519081526020015b60405180910390f35b6100d06100cb366004610b2f565b6101a9565b60405190151581526020016100b4565b6100f36100ee366004610b53565b6101f9565b6040516100b49190610bb2565b61011361010e366004610d0d565b61028d565b005b610128610123366004610dc3565b6102f9565b6040516100b49190610ec8565b610113610143366004610edb565b6103c6565b610113610156366004610f3c565b6103d8565b6100d0610169366004610f78565b6103e7565b61011361017c366004610fab565b610415565b6000818152602081815260408083206001600160a01b03861684529091529020545b92915050565b60006001600160e01b03198216636cdb3d1360e11b14806101da57506001600160e01b031982166303a24d0760e21b145b806101a357506301ffc9a760e01b6001600160e01b03198316146101a3565b60606002805461020890611004565b80601f016020809104026020016040519081016040528092919081815260200182805461023490611004565b80156102815780601f1061025657610100808354040283529160200191610281565b820191906000526020600020905b81548152906001019060200180831161026457829003601f168201915b50505050509050919050565b336001600160a01b03861681148015906102ae57506102ac86826103e7565b155b156102e45760405163711bec9160e11b81526001600160a01b038083166004830152871660248201526044015b60405180910390fd5b6102f18686868686610474565b505050505050565b6060815183511461032a5781518351604051635b05999160e01b8152600481019290925260248201526044016102db565b6000835167ffffffffffffffff81111561034657610346610bc5565b60405190808252806020026020018201604052801561036f578160200160208202803683370190505b50905060005b84518110156103be5760208082028601015161039990602080840287010151610181565b8282815181106103ab576103ab61103e565b6020908102919091010152600101610375565b509392505050565b6103d2848484846104db565b50505050565b6103e3338383610538565b5050565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205460ff1690565b336001600160a01b0386168114801590610436575061043486826103e7565b155b156104675760405163711bec9160e11b81526001600160a01b038083166004830152871660248201526044016102db565b6102f186868686866105ce565b6001600160a01b03841661049e57604051632bfa23e760e11b8152600060048201526024016102db565b6001600160a01b0385166104c757604051626a0d4560e21b8152600060048201526024016102db565b6104d4858585858561065c565b5050505050565b6001600160a01b03841661050557604051632bfa23e760e11b8152600060048201526024016102db565b604080516001808252602082018690528183019081526060820185905260808201909252906102f160008784848761065c565b6001600160a01b0382166105615760405162ced3e160e81b8152600060048201526024016102db565b6001600160a01b03838116600081815260016020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6001600160a01b0384166105f857604051632bfa23e760e11b8152600060048201526024016102db565b6001600160a01b03851661062157604051626a0d4560e21b8152600060048201526024016102db565b60408051600180825260208201869052818301908152606082018590526080820190925290610653878784848761065c565b50505050505050565b610668858585856106af565b6001600160a01b038416156104d457825133906001036106a1576020848101519084015161069a8389898585896108c3565b50506102f1565b6102f18187878787876109e7565b80518251146106de5781518151604051635b05999160e01b8152600481019290925260248201526044016102db565b3360005b83518110156107e4576020818102858101820151908501909101516001600160a01b03881615610795576000828152602081815260408083206001600160a01b038c1684529091529020548181101561076e576040516303dee4c560e01b81526001600160a01b038a1660048201526024810182905260448101839052606481018490526084016102db565b6000838152602081815260408083206001600160a01b038d16845290915290209082900390555b6001600160a01b038716156107da576000828152602081815260408083206001600160a01b038b168452909152812080548392906107d4908490611054565b90915550505b50506001016106e2565b5082516001036108655760208301516000906020840151909150856001600160a01b0316876001600160a01b0316846001600160a01b03167fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f628585604051610856929190918252602082015260400190565b60405180910390a450506104d4565b836001600160a01b0316856001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516108b4929190611075565b60405180910390a45050505050565b6001600160a01b0384163b156102f15760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e619061090790899089908890889088906004016110a3565b6020604051808303816000875af1925050508015610942575060408051601f3d908101601f1916820190925261093f918101906110e8565b60015b6109ab573d808015610970576040519150601f19603f3d011682016040523d82523d6000602084013e610975565b606091505b5080516000036109a357604051632bfa23e760e11b81526001600160a01b03861660048201526024016102db565b805181602001fd5b6001600160e01b0319811663f23a6e6160e01b1461065357604051632bfa23e760e11b81526001600160a01b03861660048201526024016102db565b6001600160a01b0384163b156102f15760405163bc197c8160e01b81526001600160a01b0385169063bc197c8190610a2b9089908990889088908890600401611105565b6020604051808303816000875af1925050508015610a66575060408051601f3d908101601f19168201909252610a63918101906110e8565b60015b610a94573d808015610970576040519150601f19603f3d011682016040523d82523d6000602084013e610975565b6001600160e01b0319811663bc197c8160e01b1461065357604051632bfa23e760e11b81526001600160a01b03861660048201526024016102db565b80356001600160a01b0381168114610ae757600080fd5b919050565b60008060408385031215610aff57600080fd5b610b0883610ad0565b946020939093013593505050565b6001600160e01b031981168114610b2c57600080fd5b50565b600060208284031215610b4157600080fd5b8135610b4c81610b16565b9392505050565b600060208284031215610b6557600080fd5b5035919050565b6000815180845260005b81811015610b9257602081850181015186830182015201610b76565b506000602082860101526020601f19601f83011685010191505092915050565b602081526000610b4c6020830184610b6c565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715610c0457610c04610bc5565b604052919050565b600067ffffffffffffffff821115610c2657610c26610bc5565b5060051b60200190565b600082601f830112610c4157600080fd5b8135610c54610c4f82610c0c565b610bdb565b8082825260208201915060208360051b860101925085831115610c7657600080fd5b602085015b83811015610c93578035835260209283019201610c7b565b5095945050505050565b600082601f830112610cae57600080fd5b813567ffffffffffffffff811115610cc857610cc8610bc5565b610cdb601f8201601f1916602001610bdb565b818152846020838601011115610cf057600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215610d2557600080fd5b610d2e86610ad0565b9450610d3c60208701610ad0565b9350604086013567ffffffffffffffff811115610d5857600080fd5b610d6488828901610c30565b935050606086013567ffffffffffffffff811115610d8157600080fd5b610d8d88828901610c30565b925050608086013567ffffffffffffffff811115610daa57600080fd5b610db688828901610c9d565b9150509295509295909350565b60008060408385031215610dd657600080fd5b823567ffffffffffffffff811115610ded57600080fd5b8301601f81018513610dfe57600080fd5b8035610e0c610c4f82610c0c565b8082825260208201915060208360051b850101925087831115610e2e57600080fd5b6020840193505b82841015610e5757610e4684610ad0565b825260209384019390910190610e35565b9450505050602083013567ffffffffffffffff811115610e7657600080fd5b610e8285828601610c30565b9150509250929050565b600081518084526020840193506020830160005b82811015610ebe578151865260209586019590910190600101610ea0565b5093949350505050565b602081526000610b4c6020830184610e8c565b60008060008060808587031215610ef157600080fd5b610efa85610ad0565b93506020850135925060408501359150606085013567ffffffffffffffff811115610f2457600080fd5b610f3087828801610c9d565b91505092959194509250565b60008060408385031215610f4f57600080fd5b610f5883610ad0565b915060208301358015158114610f6d57600080fd5b809150509250929050565b60008060408385031215610f8b57600080fd5b610f9483610ad0565b9150610fa260208401610ad0565b90509250929050565b600080600080600060a08688031215610fc357600080fd5b610fcc86610ad0565b9450610fda60208701610ad0565b93506040860135925060608601359150608086013567ffffffffffffffff811115610daa57600080fd5b600181811c9082168061101857607f821691505b60208210810361103857634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b808201808211156101a357634e487b7160e01b600052601160045260246000fd5b6040815260006110886040830185610e8c565b828103602084015261109a8185610e8c565b95945050505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190526000906110dd90830184610b6c565b979650505050505050565b6000602082840312156110fa57600080fd5b8151610b4c81610b16565b6001600160a01b0386811682528516602082015260a06040820181905260009061113190830186610e8c565b82810360608401526111438186610e8c565b905082810360808401526111578185610b6c565b9897505050505050505056fea2646970667358221220f10ecef8255aa5c7902e99c8531e4ae79db769e0f11dd8af779f419eb3883dbb64736f6c634300081b0033",
  "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100925760003560e01c80634e1273f4116100665780634e1273f414610115578063731133e914610135578063a22cb46514610148578063e985e9c51461015b578063f242432a1461016e57600080fd5b8062fdd58e1461009757806301ffc9a7146100bd5780630e89341c146100e05780632eb2c2d614610100575b600080fd5b6100aa6100a5366004610aec565b610181565b6040519081526020015b60405180910390f35b6100d06100cb366004610b2f565b6101a9565b60405190151581526020016100b4565b6100f36100ee366004610b53565b6101f9565b6040516100b49190610bb2565b61011361010e366004610d0d565b61028d565b005b610128610123366004610dc3565b6102f9565b6040516100b49190610ec8565b610113610143366004610edb565b6103c6565b610113610156366004610f3c565b6103d8565b6100d0610169366004610f78565b6103e7565b61011361017c366004610fab565b610415565b6000818152602081815260408083206001600160a01b03861684529091529020545b92915050565b60006001600160e01b03198216636cdb3d1360e11b14806101da57506001600160e01b031982166303a24d0760e21b145b806101a357506301ffc9a760e01b6001600160e01b03198316146101a3565b60606002805461020890611004565b80601f016020809104026020016040519081016040528092919081815260200182805461023490611004565b80156102815780601f1061025657610100808354040283529160200191610281565b820191906000526020600020905b81548152906001019060200180831161026457829003601f168201915b50505050509050919050565b336001600160a01b03861681148015906102ae57506102ac86826103e7565b155b156102e45760405163711bec9160e11b81526001600160a01b038083166004830152871660248201526044015b60405180910390fd5b6102f18686868686610474565b505050505050565b6060815183511461032a5781518351604051635b05999160e01b8152600481019290925260248201526044016102db565b6000835167ffffffffffffffff81111561034657610346610bc5565b60405190808252806020026020018201604052801561036f578160200160208202803683370190505b50905060005b84518110156103be5760208082028601015161039990602080840287010151610181565b8282815181106103ab576103ab61103e565b6020908102919091010152600101610375565b509392505050565b6103d2848484846104db565b50505050565b6103e3338383610538565b5050565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205460ff1690565b336001600160a01b0386168114801590610436575061043486826103e7565b155b156104675760405163711bec9160e11b81526001600160a01b038083166004830152871660248201526044016102db565b6102f186868686866105ce565b6001600160a01b03841661049e57604051632bfa23e760e11b8152600060048201526024016102db565b6001600160a01b0385166104c757604051626a0d4560e21b8152600060048201526024016102db565b6104d4858585858561065c565b5050505050565b6001600160a01b03841661050557604051632bfa23e760e11b8152600060048201526024016102db565b604080516001808252602082018690528183019081526060820185905260808201909252906102f160008784848761065c565b6001600160a01b0382166105615760405162ced3e160e81b8152600060048201526024016102db565b6001600160a01b03838116600081815260016020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6001600160a01b0384166105f857604051632bfa23e760e11b8152600060048201526024016102db565b6001600160a01b03851661062157604051626a0d4560e21b8152600060048201526024016102db565b60408051600180825260208201869052818301908152606082018590526080820190925290610653878784848761065c565b50505050505050565b610668858585856106af565b6001600160a01b038416156104d457825133906001036106a1576020848101519084015161069a8389898585896108c3565b50506102f1565b6102f18187878787876109e7565b80518251146106de5781518151604051635b05999160e01b8152600481019290925260248201526044016102db565b3360005b83518110156107e4576020818102858101820151908501909101516001600160a01b03881615610795576000828152602081815260408083206001600160a01b038c1684529091529020548181101561076e576040516303dee4c560e01b81526001600160a01b038a1660048201526024810182905260448101839052606481018490526084016102db565b6000838152602081815260408083206001600160a01b038d16845290915290209082900390555b6001600160a01b038716156107da576000828152602081815260408083206001600160a01b038b168452909152812080548392906107d4908490611054565b90915550505b50506001016106e2565b5082516001036108655760208301516000906020840151909150856001600160a01b0316876001600160a01b0316846001600160a01b03167fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f628585604051610856929190918252602082015260400190565b60405180910390a450506104d4565b836001600160a01b0316856001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516108b4929190611075565b60405180910390a45050505050565b6001600160a01b0384163b156102f15760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e619061090790899089908890889088906004016110a3565b6020604051808303816000875af1925050508015610942575060408051601f3d908101601f1916820190925261093f918101906110e8565b60015b6109ab573d808015610970576040519150601f19603f3d011682016040523d82523d6000602084013e610975565b606091505b5080516000036109a357604051632bfa23e760e11b81526001600160a01b03861660048201526024016102db565b805181602001fd5b6001600160e01b0319811663f23a6e6160e01b1461065357604051632bfa23e760e11b81526001600160a01b03861660048201526024016102db565b6001600160a01b0384163b156102f15760405163bc197c8160e01b81526001600160a01b0385169063bc197c8190610a2b9089908990889088908890600401611105565b6020604051808303816000875af1925050508015610a66575060408051601f3d908101601f19168201909252610a63918101906110e8565b60015b610a94573d808015610970576040519150601f19603f3d011682016040523d82523d6000602084013e610975565b6001600160e01b0319811663bc197c8160e01b1461065357604051632bfa23e760e11b81526001600160a01b03861660048201526024016102db565b80356001600160a01b0381168114610ae757600080fd5b919050565b60008060408385031215610aff57600080fd5b610b0883610ad0565b946020939093013593505050565b6001600160e01b031981168114610b2c57600080fd5b50565b600060208284031215610b4157600080fd5b8135610b4c81610b16565b9392505050565b600060208284031215610b6557600080fd5b5035919050565b6000815180845260005b81811015610b9257602081850181015186830182015201610b76565b506000602082860101526020601f19601f83011685010191505092915050565b602081526000610b4c6020830184610b6c565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715610c0457610c04610bc5565b604052919050565b600067ffffffffffffffff821115610c2657610c26610bc5565b5060051b60200190565b600082601f830112610c4157600080fd5b8135610c54610c4f82610c0c565b610bdb565b8082825260208201915060208360051b860101925085831115610c7657600080fd5b602085015b83811015610c93578035835260209283019201610c7b565b5095945050505050565b600082601f830112610cae57600080fd5b813567ffffffffffffffff811115610cc857610cc8610bc5565b610cdb601f8201601f1916602001610bdb565b818152846020838601011115610cf057600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215610d2557600080fd5b610d2e86610ad0565b9450610d3c60208701610ad0565b9350604086013567ffffffffffffffff811115610d5857600080fd5b610d6488828901610c30565b935050606086013567ffffffffffffffff811115610d8157600080fd5b610d8d88828901610c30565b925050608086013567ffffffffffffffff811115610daa57600080fd5b610db688828901610c9d565b9150509295509295909350565b60008060408385031215610dd657600080fd5b823567ffffffffffffffff811115610ded57600080fd5b8301601f81018513610dfe57600080fd5b8035610e0c610c4f82610c0c565b8082825260208201915060208360051b850101925087831115610e2e57600080fd5b6020840193505b82841015610e5757610e4684610ad0565b825260209384019390910190610e35565b9450505050602083013567ffffffffffffffff811115610e7657600080fd5b610e8285828601610c30565b9150509250929050565b600081518084526020840193506020830160005b82811015610ebe578151865260209586019590910190600101610ea0565b5093949350505050565b602081526000610b4c6020830184610e8c565b60008060008060808587031215610ef157600080fd5b610efa85610ad0565b93506020850135925060408501359150606085013567ffffffffffffffff811115610f2457600080fd5b610f3087828801610c9d565b91505092959194509250565b60008060408385031215610f4f57600080fd5b610f5883610ad0565b915060208301358015158114610f6d57600080fd5b809150509250929050565b60008060408385031215610f8b57600080fd5b610f9483610ad0565b9150610fa260208401610ad0565b90509250929050565b600080600080600060a08688031215610fc357600080fd5b610fcc86610ad0565b9450610fda60208701610ad0565b93506040860135925060608601359150608086013567ffffffffffffffff811115610daa57600080fd5b600181811c9082168061101857607f821691505b60208210810361103857634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b808201808211156101a357634e487b7160e01b600052601160045260246000fd5b6040815260006110886040830185610e8c565b828103602084015261109a8185610e8c565b95945050505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190526000906110dd90830184610b6c565b979650505050505050565b6000602082840312156110fa57600080fd5b8151610b4c81610b16565b6001600160a01b0386811682528516602082015260a06040820181905260009061113190830186610e8c565b82810360608401526111438186610e8c565b905082810360808401526111578185610b6c565b9897505050505050505056fea2646970667358221220f10ecef8255aa5c7902e99c8531e4ae79db769e0f11dd8af779f419eb3883dbb64736f6c634300081b0033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
