[
{
"inputs": [],
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"stateMutability": "payable",
"type": "fallback"
},
{
"inputs": [],
"name": "implementation",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"stateMutability": "payable",
"type": "receive"
}
]
608060405234801561001057600080fd5b506040805180820182526012815271667269656e642e746563682e67726170687360701b6020808301919091528251808401909352600683526508ca88ea4a0960d31b908301529061008360017f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbd6101f7565b6000805160206104078339815191521461009f5761009f61021e565b73e91f682033461e3e100d765ddd2ed6bdd0bdad946100d860008051602061040783398151915260001b6101f460201b6100ce1760201c565b80546001600160a01b0319166001600160a01b039290921691909117905560405160009073e91f682033461e3e100d765ddd2ed6bdd0bdad94906101229085908590602401610284565b60408051601f198184030181529181526020820180516001600160e01b031663266c45bb60e11b1790525161015791906102b2565b600060405180830381855af49150503d8060008114610192576040519150601f19603f3d011682016040523d82523d6000602084013e610197565b606091505b50509050806101ec5760405162461bcd60e51b815260206004820152601560248201527f496e697469616c697a6174696f6e206661696c65640000000000000000000000604482015260640160405180910390fd5b5050506102ce565b90565b8181038181111561021857634e487b7160e01b600052601160045260246000fd5b92915050565b634e487b7160e01b600052600160045260246000fd5b60005b8381101561024f578181015183820152602001610237565b50506000910152565b60008151808452610270816020860160208601610234565b601f01601f19169290920160200192915050565b6040815260006102976040830185610258565b82810360208401526102a98185610258565b95945050505050565b600082516102c4818460208701610234565b9190910192915050565b61012a806102dd6000396000f3fe608060405260043610601f5760003560e01c80635c60da1b14603157602b565b36602b576029605f565b005b6029605f565b348015603c57600080fd5b5060436097565b6040516001600160a01b03909116815260200160405180910390f35b609560917f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b60d1565b565b600060c97f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b90565b3660008037600080366000845af43d6000803e80801560ef573d6000f35b3d6000fdfea2646970667358221220f16dbce20cc1742a595849fd3e19a9ba0fed0494bd93cfa848a6eaa00f462ce164736f6c63430008110033360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc