[
{
"inputs": [
{
"internalType": "address",
"name": "_implementation",
"type": "address"
},
{
"internalType": "bytes",
"name": "_data",
"type": "bytes"
}
],
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"inputs": [
{
"internalType": "address",
"name": "target",
"type": "address"
}
],
"name": "AddressEmptyCode",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "implementation",
"type": "address"
}
],
"name": "ERC1967InvalidImplementation",
"type": "error"
},
{
"inputs": [],
"name": "ERC1967NonPayable",
"type": "error"
},
{
"inputs": [],
"name": "FailedInnerCall",
"type": "error"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "implementation",
"type": "address"
}
],
"name": "Upgraded",
"type": "event"
},
{
"stateMutability": "payable",
"type": "fallback"
}
]
608060405234801561001057600080fd5b5060405161041b38038061041b83398101604081905261002f91610279565b818161003b8282610044565b50505050610363565b61004d826100a3565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a280511561009757610092828261011f565b505050565b61009f610196565b5050565b806001600160a01b03163b6000036100de57604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080846001600160a01b03168460405161013c9190610347565b600060405180830381855af49150503d8060008114610177576040519150601f19603f3d011682016040523d82523d6000602084013e61017c565b606091505b50909250905061018d8583836101b7565b95945050505050565b34156101b55760405163b398979f60e01b815260040160405180910390fd5b565b6060826101cc576101c782610216565b61020f565b81511580156101e357506001600160a01b0384163b155b1561020c57604051639996b31560e01b81526001600160a01b03851660048201526024016100d5565b50805b9392505050565b8051156102265780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b634e487b7160e01b600052604160045260246000fd5b60005b83811015610270578181015183820152602001610258565b50506000910152565b6000806040838503121561028c57600080fd5b82516001600160a01b03811681146102a357600080fd5b60208401519092506001600160401b03808211156102c057600080fd5b818501915085601f8301126102d457600080fd5b8151818111156102e6576102e661023f565b604051601f8201601f19908116603f0116810190838211818310171561030e5761030e61023f565b8160405282815288602084870101111561032757600080fd5b610338836020830160208801610255565b80955050505050509250929050565b60008251610359818460208701610255565b9190910192915050565b60aa806103716000396000f3fe6080604052600a600c565b005b60186014601a565b6051565b565b6000604c7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e808015606f573d6000f35b3d6000fdfea2646970667358221220d8758f1ef5a66dcfb48ea6ae31f7211913ecf506b93e443dedc8c83d4b68fcf764736f6c6343000814003300000000000000000000000066afe3adb1d2b17ad1405dab93692b43f009e655000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000e490657147000000000000000000000000fdae7bd53f09e435567e46aa6a23255a5de47f84000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000094455432d53544f434b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005455243323000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000