[ { "inputs": [ { "internalType": "address", "name": "_logic", "type": "address" }, { "internalType": "address", "name": "admin_", "type": "address" }, { "internalType": "bytes", "name": "_data", "type": "bytes" } ], "stateMutability": "payable", "type": "constructor" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "previousAdmin", "type": "address" }, { "indexed": false, "internalType": "address", "name": "newAdmin", "type": "address" } ], "name": "AdminChanged", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "beacon", "type": "address" } ], "name": "BeaconUpgraded", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "implementation", "type": "address" } ], "name": "Upgraded", "type": "event" }, { "stateMutability": "payable", "type": "fallback" }, { "inputs": [], "name": "admin", "outputs": [ { "internalType": "address", "name": "admin_", "type": "address" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newAdmin", "type": "address" } ], "name": "changeAdmin", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "implementation", "outputs": [ { "internalType": "address", "name": "implementation_", "type": "address" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newImplementation", "type": "address" } ], "name": "upgradeTo", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newImplementation", "type": "address" }, { "internalType": "bytes", "name": "data", "type": "bytes" } ], "name": "upgradeToAndCall", "outputs": [], "stateMutability": "payable", "type": "function" }, { "stateMutability": "payable", "type": "receive" } ]
608060405260405162000e5138038062000e51833981016040819052620000269162000490565b82816200005560017f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbd6200056a565b5f8051602062000e0a833981519152146200007457620000746200058a565b6200008182825f620000e4565b50620000b1905060017fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61046200056a565b5f8051602062000dea83398151915214620000d057620000d06200058a565b620000db8262000115565b505050620005ef565b620000ef8362000186565b5f82511180620000fc5750805b1562000110576200010e8383620001c7565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f620001565f8051602062000dea833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a16200018381620001f8565b50565b620001918162000295565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b905f90a250565b6060620001ef838360405180606001604052806027815260200162000e2a602791396200031a565b90505b92915050565b6001600160a01b038116620002635760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b805f8051602062000dea8339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b620003045760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016200025a565b805f8051602062000e0a83398151915262000274565b60606001600160a01b0384163b620003845760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016200025a565b5f80856001600160a01b031685604051620003a091906200059e565b5f60405180830381855af49150503d805f8114620003da576040519150601f19603f3d011682016040523d82523d5f602084013e620003df565b606091505b509092509050620003f2828286620003fe565b925050505b9392505050565b606083156200040f575081620003f7565b825115620004205782518084602001fd5b8160405162461bcd60e51b81526004016200025a9190620005bb565b80516001600160a01b038116811462000453575f80fd5b919050565b634e487b7160e01b5f52604160045260245ffd5b5f5b83811015620004885781810151838201526020016200046e565b50505f910152565b5f805f60608486031215620004a3575f80fd5b620004ae846200043c565b9250620004be602085016200043c565b60408501519092506001600160401b0380821115620004db575f80fd5b818601915086601f830112620004ef575f80fd5b81518181111562000504576200050462000458565b604051601f8201601f19908116603f011681019083821181831017156200052f576200052f62000458565b8160405282815289602084870101111562000548575f80fd5b6200055b8360208301602088016200046c565b80955050505050509250925092565b81810381811115620001f257634e487b7160e01b5f52601160045260245ffd5b634e487b7160e01b5f52600160045260245ffd5b5f8251620005b18184602087016200046c565b9190910192915050565b602081525f8251806020840152620005db8160408501602087016200046c565b601f01601f19169190910160400192915050565b6107ed80620005fd5f395ff3fe60806040526004361061004d575f3560e01c80633659cfe6146100645780634f1ef286146100835780635c60da1b146100965780638f283970146100c6578063f851a440146100e55761005c565b3661005c5761005a6100f9565b005b61005a6100f9565b34801561006f575f80fd5b5061005a61007e36600461068c565b610113565b61005a6100913660046106a5565b61014e565b3480156100a1575f80fd5b506100aa6101b4565b6040516001600160a01b03909116815260200160405180910390f35b3480156100d1575f80fd5b5061005a6100e036600461068c565b6101e4565b3480156100f0575f80fd5b506100aa610204565b610101610224565b61011161010c6102b9565b6102c2565b565b61011b6102e0565b6001600160a01b03163303610146576101438160405180602001604052805f8152505f610312565b50565b6101436100f9565b6101566102e0565b6001600160a01b031633036101ac576101a78383838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525060019250610312915050565b505050565b6101a76100f9565b5f6101bd6102e0565b6001600160a01b031633036101d9576101d46102b9565b905090565b6101e16100f9565b90565b6101ec6102e0565b6001600160a01b03163303610146576101438161033c565b5f61020d6102e0565b6001600160a01b031633036101d9576101d46102e0565b61022c6102e0565b6001600160a01b031633036101115760405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b5f6101d4610390565b365f80375f80365f845af43d5f803e8080156102dc573d5ff35b3d5ffd5b5f7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b61031b836103b7565b5f825111806103275750805b156101a75761033683836103f6565b50505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103656102e0565b604080516001600160a01b03928316815291841660208301520160405180910390a161014381610422565b5f7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc610303565b6103c0816104cb565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b905f90a250565b606061041b83836040518060600160405280602781526020016107916027913961055f565b9392505050565b6001600160a01b0381166104875760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084016102b0565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b6105385760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016102b0565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6104aa565b60606001600160a01b0384163b6105c75760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016102b0565b5f80856001600160a01b0316856040516105e19190610743565b5f60405180830381855af49150503d805f8114610619576040519150601f19603f3d011682016040523d82523d5f602084013e61061e565b606091505b509150915061062e828286610638565b9695505050505050565b6060831561064757508161041b565b8251156106575782518084602001fd5b8160405162461bcd60e51b81526004016102b0919061075e565b80356001600160a01b0381168114610687575f80fd5b919050565b5f6020828403121561069c575f80fd5b61041b82610671565b5f805f604084860312156106b7575f80fd5b6106c084610671565b9250602084013567ffffffffffffffff808211156106dc575f80fd5b818601915086601f8301126106ef575f80fd5b8135818111156106fd575f80fd5b87602082850101111561070e575f80fd5b6020830194508093505050509250925092565b5f5b8381101561073b578181015183820152602001610723565b50505f910152565b5f8251610754818460208701610721565b9190910192915050565b602081525f825180602084015261077c816040850160208701610721565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212204bd16d58906c20e9f4020dc81901f224b10271bb5a466926499cadec322e79b064736f6c63430008140033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c65640000000000000000000000007f27228a6034deba6d99c6593e37e07fd58b4a3a00000000000000000000000048aac7f78e08cbe832248a00bb3adcb6671b8cbb00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000