[ { "constant": false, "inputs": [ { "name": "newImplementation", "type": "address" } ], "name": "upgradeTo", "outputs": [], "payable": false, "stateMutability": "nonpayable", "type": "function" }, { "constant": false, "inputs": [ { "name": "newImplementation", "type": "address" }, { "name": "data", "type": "bytes" } ], "name": "upgradeToAndCall", "outputs": [], "payable": true, "stateMutability": "payable", "type": "function" }, { "constant": false, "inputs": [], "name": "implementation", "outputs": [ { "name": "", "type": "address" } ], "payable": false, "stateMutability": "nonpayable", "type": "function" }, { "constant": false, "inputs": [ { "name": "newAdmin", "type": "address" } ], "name": "changeAdmin", "outputs": [], "payable": false, "stateMutability": "nonpayable", "type": "function" }, { "constant": false, "inputs": [], "name": "admin", "outputs": [ { "name": "", "type": "address" } ], "payable": false, "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "name": "_logic", "type": "address" }, { "name": "_admin", "type": "address" }, { "name": "_data", "type": "bytes" } ], "payable": true, "stateMutability": "payable", "type": "constructor" }, { "payable": true, "stateMutability": "payable", "type": "fallback" }, { "anonymous": false, "inputs": [ { "indexed": false, "name": "previousAdmin", "type": "address" }, { "indexed": false, "name": "newAdmin", "type": "address" } ], "name": "AdminChanged", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "name": "implementation", "type": "address" } ], "name": "Upgraded", "type": "event" } ]
6080604052604051610c70380380610c708339810180604052606081101561002657600080fd5b810190808051906020019092919080519060200190929190805164010000000081111561005257600080fd5b8281019050602081018481111561006857600080fd5b815185600182028301116401000000008211171561008557600080fd5b505092919050505082816040518080610c1260239139602301905060405180910390207f7050c9e0f4ca769c69bd3a8ef740bc37934f8e2c036e5a723fd8ee048ed3f8c36001021415156100d557fe5b6100ed82610242640100000000026401000000009004565b6000815111156101bd5760008273ffffffffffffffffffffffffffffffffffffffff16826040518082805190602001908083835b6020831015156101465780518252602082019150602081019050602083039250610121565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d80600081146101a6576040519150601f19603f3d011682016040523d82523d6000602084013e6101ab565b606091505b505090508015156101bb57600080fd5b505b505060405180807f6f72672e7a657070656c696e6f732e70726f78792e61646d696e000000000000815250601a01905060405180910390207f10d6a54a4754c8869d6886b5f5d7fbfa5b4522237ea5c60d11bc4e7a1ff9390b60010214151561022257fe5b61023a826102e4640100000000026401000000009004565b505050610326565b61025e81610313640100000000026107fb176401000000009004565b15156102b5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603b815260200180610c35603b913960400191505060405180910390fd5b60007f7050c9e0f4ca769c69bd3a8ef740bc37934f8e2c036e5a723fd8ee048ed3f8c360010290508181555050565b60007f10d6a54a4754c8869d6886b5f5d7fbfa5b4522237ea5c60d11bc4e7a1ff9390b60010290508181555050565b600080823b905060008111915050919050565b6108dd806103356000396000f3fe608060405260043610610067576000357c0100000000000000000000000000000000000000000000000000000000900480633659cfe6146100715780634f1ef286146100c25780635c60da1b1461015b5780638f283970146101b2578063f851a44014610203575b61006f61025a565b005b34801561007d57600080fd5b506100c06004803603602081101561009457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610274565b005b610159600480360360408110156100d857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019064010000000081111561011557600080fd5b82018360208201111561012757600080fd5b8035906020019184600183028401116401000000008311171561014957600080fd5b90919293919293905050506102c9565b005b34801561016757600080fd5b506101706103a1565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101be57600080fd5b50610201600480360360208110156101d557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506103f9565b005b34801561020f57600080fd5b50610218610574565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6102626105cc565b61027261026d610664565b610695565b565b61027c6106bb565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614156102bd576102b8816106ec565b6102c6565b6102c561025a565b5b50565b6102d16106bb565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614156103935761030d836106ec565b60008373ffffffffffffffffffffffffffffffffffffffff168383604051808383808284378083019250505092505050600060405180830381855af49150503d8060008114610378576040519150601f19603f3d011682016040523d82523d6000602084013e61037d565b606091505b5050905080151561038d57600080fd5b5061039c565b61039b61025a565b5b505050565b60006103ab6106bb565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614156103ed576103e6610664565b90506103f6565b6103f561025a565b5b90565b6104016106bb565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141561056857600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156104bc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260368152602001806108416036913960400191505060405180910390fd5b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6104e56106bb565b82604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a16105638161073b565b610571565b61057061025a565b5b50565b600061057e6106bb565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614156105c0576105b96106bb565b90506105c9565b6105c861025a565b5b90565b6105d46106bb565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415151561065a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603281526020018061080f6032913960400191505060405180910390fd5b61066261076a565b565b6000807f7050c9e0f4ca769c69bd3a8ef740bc37934f8e2c036e5a723fd8ee048ed3f8c36001029050805491505090565b3660008037600080366000845af43d6000803e80600081146106b6573d6000f35b3d6000fd5b6000807f10d6a54a4754c8869d6886b5f5d7fbfa5b4522237ea5c60d11bc4e7a1ff9390b6001029050805491505090565b6106f58161076c565b8073ffffffffffffffffffffffffffffffffffffffff167fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b60405160405180910390a250565b60007f10d6a54a4754c8869d6886b5f5d7fbfa5b4522237ea5c60d11bc4e7a1ff9390b60010290508181555050565b565b610775816107fb565b15156107cc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603b815260200180610877603b913960400191505060405180910390fd5b60007f7050c9e0f4ca769c69bd3a8ef740bc37934f8e2c036e5a723fd8ee048ed3f8c360010290508181555050565b600080823b90506000811191505091905056fe43616e6e6f742063616c6c2066616c6c6261636b2066756e6374696f6e2066726f6d207468652070726f78792061646d696e43616e6e6f74206368616e6765207468652061646d696e206f6620612070726f787920746f20746865207a65726f206164647265737343616e6e6f742073657420612070726f787920696d706c656d656e746174696f6e20746f2061206e6f6e2d636f6e74726163742061646472657373a165627a7a72305820b6f16038090c753f0c6f1b3c6169e6efd0704d91ba6bb106c29b5fbd8aa554d700296f72672e7a657070656c696e6f732e70726f78792e696d706c656d656e746174696f6e43616e6e6f742073657420612070726f787920696d706c656d656e746174696f6e20746f2061206e6f6e2d636f6e7472616374206164647265737300000000000000000000000070be90cd788bef69d52b0d6e767efe3b289bd0b4000000000000000000000000ca8e49cd1f5c82fed96dee64d7a2fbcdd6b06be400000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000
0604052604051610c70380380610c708339810180604052606081101561002657600080fd5b810190808051906020019092919080519060200190929190805164010000000081111561005257600080fd5b8281019050602081018481111561006857600080fd5b815185600182028301116401000000008211171561008557600080fd5b505092919050505082816040518080610c1260239139602301905060405180910390207f7050c9e0f4ca769c69bd3a8ef740bc37934f8e2c036e5a723fd8ee048ed3f8c36001021415156100d557fe5b6100ed82610242640100000000026401000000009004565b6000815111156101bd5760008273ffffffffffffffffffffffffffffffffffffffff16826040518082805190602001908083835b6020831015156101465780518252602082019150602081019050602083039250610121565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d80600081146101a6576040519150601f19603f3d011682016040523d82523d6000602084013e6101ab565b606091505b505090508015156101bb57600080fd5b505b505060405180807f6f72672e7a657070656c696e6f732e70726f78792e61646d696e000000000000815250601a01905060405180910390207f10d6a54a4754c8869d6886b5f5d7fbfa5b4522237ea5c60d11bc4e7a1ff9390b60010214151561022257fe5b61023a826102e4640100000000026401000000009004565b505050610326565b61025e81610313640100000000026107fb176401000000009004565b15156102b5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603b815260200180610c35603b913960400191505060405180910390fd5b60007f7050c9e0f4ca769c69bd3a8ef740bc37934f8e2c036e5a723fd8ee048ed3f8c360010290508181555050565b60007f10d6a54a4754c8869d6886b5f5d7fbfa5b4522237ea5c60d11bc4e7a1ff9390b60010290508181555050565b600080823b905060008111915050919050565b6108dd806103356000396000f3fe608060405260043610610067576000357c0100000000000000000000000000000000000000000000000000000000900480633659cfe6146100715780634f1ef286146100c25780635c60da1b1461015b5780638f283970146101b2578063f851a44014610203575b61006f61025a565b005b34801561007d57600080fd5b506100c06004803603602081101561009457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610274565b005b610159600480360360408110156100d857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019064010000000081111561011557600080fd5b82018360208201111561012757600080fd5b8035906020019184600183028401116401000000008311171561014957600080fd5b90919293919293905050506102c9565b005b34801561016757600080fd5b506101706103a1565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101be57600080fd5b50610201600480360360208110156101d557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506103f9565b005b34801561020f57600080fd5b50610218610574565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6102626105cc565b61027261026d610664565b610695565b565b61027c6106bb565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614156102bd576102b8816106ec565b6102c6565b6102c561025a565b5b50565b6102d16106bb565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614156103935761030d836106ec565b60008373ffffffffffffffffffffffffffffffffffffffff168383604051808383808284378083019250505092505050600060405180830381855af49150503d8060008114610378576040519150601f19603f3d011682016040523d82523d6000602084013e61037d565b606091505b5050905080151561038d57600080fd5b5061039c565b61039b61025a565b5b505050565b60006103ab6106bb565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614156103ed576103e6610664565b90506103f6565b6103f561025a565b5b90565b6104016106bb565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141561056857600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156104bc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260368152602001806108416036913960400191505060405180910390fd5b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6104e56106bb565b82604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a16105638161073b565b610571565b61057061025a565b5b50565b600061057e6106bb565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614156105c0576105b96106bb565b90506105c9565b6105c861025a565b5b90565b6105d46106bb565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415151561065a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603281526020018061080f6032913960400191505060405180910390fd5b61066261076a565b565b6000807f7050c9e0f4ca769c69bd3a8ef740bc37934f8e2c036e5a723fd8ee048ed3f8c36001029050805491505090565b3660008037600080366000845af43d6000803e80600081146106b6573d6000f35b3d6000fd5b6000807f10d6a54a4754c8869d6886b5f5d7fbfa5b4522237ea5c60d11bc4e7a1ff9390b6001029050805491505090565b6106f58161076c565b8073ffffffffffffffffffffffffffffffffffffffff167fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b60405160405180910390a250565b60007f10d6a54a4754c8869d6886b5f5d7fbfa5b4522237ea5c60d11bc4e7a1ff9390b60010290508181555050565b565b610775816107fb565b15156107cc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603b815260200180610877603b913960400191505060405180910390fd5b60007f7050c9e0f4ca769c69bd3a8ef740bc37934f8e2c036e5a723fd8ee048ed3f8c360010290508181555050565b600080823b90506000811191505091905056fe43616e6e6f742063616c6c2066616c6c6261636b2066756e6374696f6e2066726f6d207468652070726f78792061646d696e43616e6e6f74206368616e6765207468652061646d696e206f6620612070726f787920746f20746865207a65726f206164647265737343616e6e6f742073657420612070726f787920696d706c656d656e746174696f6e20746f2061206e6f6e2d636f6e74726163742061646472657373a165627a7a72305820b6f16038090c753f0c6f1b3c6169e6efd0704d91ba6bb106c29b5fbd8aa554d700296f72672e7a657070656c696e6f732e70726f78792e696d706c656d656e746174696f6e43616e6e6f742073657420612070726f787920696d706c656d656e746174696f6e20746f2061206e6f6e2d636f6e7472616374206164647265737300000000000000000000000070be90cd788bef69d52b0d6e767efe3b289bd0b4000000000000000000000000ca8e49cd1f5c82fed96dee64d7a2fbcdd6b06be400000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000