[
{
"inputs": [
{
"internalType": "address",
"name": "implementation",
"type": "address"
},
{
"internalType": "bytes",
"name": "_data",
"type": "bytes"
}
],
"stateMutability": "payable",
"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"
}
]
608060405260405161040a38038061040a83398101604081905261002291610268565b61002c8282610033565b5050610352565b61003c82610092565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a280511561008657610081828261010e565b505050565b61008e610185565b5050565b806001600160a01b03163b6000036100cd57604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080846001600160a01b03168460405161012b9190610336565b600060405180830381855af49150503d8060008114610166576040519150601f19603f3d011682016040523d82523d6000602084013e61016b565b606091505b50909250905061017c8583836101a6565b95945050505050565b34156101a45760405163b398979f60e01b815260040160405180910390fd5b565b6060826101bb576101b682610205565b6101fe565b81511580156101d257506001600160a01b0384163b155b156101fb57604051639996b31560e01b81526001600160a01b03851660048201526024016100c4565b50805b9392505050565b8051156102155780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b634e487b7160e01b600052604160045260246000fd5b60005b8381101561025f578181015183820152602001610247565b50506000910152565b6000806040838503121561027b57600080fd5b82516001600160a01b038116811461029257600080fd5b60208401519092506001600160401b03808211156102af57600080fd5b818501915085601f8301126102c357600080fd5b8151818111156102d5576102d561022e565b604051601f8201601f19908116603f011681019083821181831017156102fd576102fd61022e565b8160405282815288602084870101111561031657600080fd5b610327836020830160208801610244565b80955050505050509250929050565b60008251610348818460208701610244565b9190910192915050565b60aa806103606000396000f3fe6080604052600a600c565b005b60186014601a565b6051565b565b6000604c7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e808015606f573d6000f35b3d6000fdfea2646970667358221220d0232cfa81216c3e4973e570f043b57ccb69ae4a81b8bc064338713721c87a9f64736f6c634300081400330000000000000000000000006dd633eb55747c356365248dcf532dec6f7ce48e00000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000364613d25bb00000000000000000000000037e6571e7141065fa13ad24b3123c2b8ac4a90fd00000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000300000000000000000000000000c1ba265da94d7d0ac6ecaccf4d13a8aa581a889f0000000000000000000000000000000000000000000000000000000000000251646174613a6170706c69636174696f6e2f6a736f6e3b6261736536342c65794a755957316c496a6f695447566e5a57356b59584a354f6942495a584a765a584d675657356a61474670626d566b496977695a47567a59334a7063485270623234694f694a435a5342735a57646c626d5268636e6b7549697769615731685a3255694f694a6f64485277637a6f764c32467a63325630637935735a57646c626d5268636e6c6f5a584a765a584e31626d4e6f59576c755a575175593239744c324e76626e527959574e304c32356d64433968636e5176615731685a3255756347356e49697769596d4675626d567958326c745957646c496a6f696148523063484d364c79396863334e6c64484d756247566e5a57356b59584a35614756796232567a6457356a61474670626d566b4c6d4e766253396a62323530636d466a644339755a6e517659584a304c324a68626d356c636931706257466e5a533577626d63694c434a6d5a57463064584a6c5a4639706257466e5a534936496d68306448427a4f69387659584e7a5a58527a4c6d786c5a3256755a4746796557686c636d396c63335675593268686157356c5a43356a623230765932397564484a6859335176626d5a304c3246796443396d5a57463064584a6c5a4331706257466e5a533577626d63694c434a6c6548526c636d35686246397361573572496a6f696148523063484d364c793933643363756247566e5a57356b59584a35614756796232567a6457356a61474670626d566b4c6d4e7662534973496d4e7662477868596d397959585276636e4d694f6c746466513d3d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003a68747470733a2f2f6d657461646174612e73616e64626f782e6c6567656e646172796865726f6573756e636861696e65642e636f6d2f7b69647d00000000000000000000000000000000000000000000000000000000000000000000