UNPKG

@gooddollar/goodprotocol

Version:
84 lines (83 loc) 23.7 kB
{ "_format": "hh-sol-artifact-1", "contractName": "ProtocolUpgradeFuse", "sourceName": "contracts/utils/ProtocolUpgradeFuse.sol", "abi": [ { "inputs": [ { "internalType": "contract Controller", "name": "_controller", "type": "address" }, { "internalType": "address", "name": "_owner", "type": "address" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [ { "internalType": "contract INameService", "name": "ns", "type": "address" }, { "internalType": "address[]", "name": "oldContracts", "type": "address[]" }, { "internalType": "address", "name": "ubiScheme", "type": "address" }, { "internalType": "bytes32[]", "name": "nameHash", "type": "bytes32[]" }, { "internalType": "address[]", "name": "nameAddress", "type": "address[]" } ], "name": "upgrade", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "schemeRegistrar", "type": "address" }, { "internalType": "address", "name": "upgradeScheme", "type": "address" }, { "internalType": "address", "name": "compoundVotingMachine", "type": "address" } ], "name": "upgradeGovernance", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ], "bytecode": "0x60806040523480156200001157600080fd5b506040516200160338038062001603833981016040819052620000349162000106565b600080546001600160a01b038085166001600160a01b03199283168117909355600180549185169190921617905560408051632d77bef360e11b81529051635aef7de6916004808201926020929091908290030181865afa1580156200009e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000c4919062000145565b600280546001600160a01b0319166001600160a01b0392909216919091179055506200016c9050565b6001600160a01b03811681146200010357600080fd5b50565b600080604083850312156200011a57600080fd5b82516200012781620000ed565b60208401519092506200013a81620000ed565b809150509250929050565b6000602082840312156200015857600080fd5b81516200016581620000ed565b9392505050565b611487806200017c6000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c80632224deea1461003b5780635c0d087b14610050575b600080fd5b61004e610049366004611034565b610063565b005b61004e61005e366004611161565b610511565b6001546001600160a01b031633146100965760405162461bcd60e51b815260040161008d906111ac565b60405180910390fd5b8281146100d75760405162461bcd60e51b815260206004820152600f60248201526e0d8cadccee8d040dad2e6dac2e8c6d608b1b604482015260640161008d565b85516004146101265760405162461bcd60e51b815260206004820152601b60248201527a0ded8c840c6dedce8e4c2c6e8e640e6d2f4ca40dad2e6dac2e8c6d602b1b604482015260640161008d565b6101658660028151811061013c5761013c6111d0565b60200260200101518688600381518110610158576101586111d0565b602002602001015161098f565b6101d38785858080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525050604080516020808902828101820190935288825290935088925087918291850190849080828437600092019190915250610e4992505050565b60005460405163bf40fac160e01b81526020600482015260086024820152674944454e5449545960c01b60448201526001600160a01b039182169163e869d45f91908a169063bf40fac190606401602060405180830381865afa15801561023e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061026291906111e6565b6002546040516001600160e01b031960e085901b1681526102999291600091600160e01b916001600160a01b03169060040161120a565b6020604051808303816000875af11580156102b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102dc919061124f565b6103265760405162461bcd60e51b815260206004820152601b60248201527a1c9959da5cdd195c9a5b99c81259195b9d1a5d1e4819985a5b1959602a1b604482015260640161008d565b60006001600160a01b031686600081518110610344576103446111d0565b60200260200101516001600160a01b0316146105085760005460405163bf40fac160e01b815260206004820152600a60248201526923a7a7a22227a62620a960b11b60448201526001600160a01b039182169163039de01d91908a169063bf40fac190606401602060405180830381865afa1580156103c7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103eb91906111e6565b6001600160a01b0316634b75f54f6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610428573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061044c91906111e6565b6002546040516001600160e01b031960e085901b16815261047a92916001600160a01b03169060040161126a565b6020604051808303816000875af1158015610499573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104bd919061124f565b6105085760405162461bcd60e51b815260206004820152601c60248201527b1d5b9c9959da5cdd195c9a5b99c8199bdc9b5d5b184819985a5b195960221b604482015260640161008d565b50505050505050565b6001546001600160a01b0316331461053b5760405162461bcd60e51b815260040161008d906111ac565b6001600160a01b0383161561061c5760005460025460405163039de01d60e01b81526001600160a01b039283169263039de01d926105819288929091169060040161126a565b6020604051808303816000875af11580156105a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105c4919061124f565b61061c5760405162461bcd60e51b8152602060048201526024808201527f756e7265676973746572696e6720736368656d655265676973747261722066616044820152631a5b195960e21b606482015260840161008d565b6001600160a01b038216156106fc5760005460025460405163039de01d60e01b81526001600160a01b039283169263039de01d926106629287929091169060040161126a565b6020604051808303816000875af1158015610681573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106a5919061124f565b6106fc5760405162461bcd60e51b815260206004820152602260248201527f756e7265676973746572696e672075706772616465536368656d65206661696c604482015261195960f21b606482015260840161008d565b6000805460025460405163e869d45f60e01b81526001600160a01b039283169363e869d45f9361073a938793601f60e01b929091169060040161120a565b6020604051808303816000875af1158015610759573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061077d919061124f565b6107da5760405162461bcd60e51b815260206004820152602860248201527f7265676973746572696e6720636f6d706f756e64566f74696e674d616368696e604482015267194819985a5b195960c21b606482015260840161008d565b6000805460015460025460405163e869d45f60e01b81526001600160a01b039384169463e869d45f9461081e948116939192601f60e01b929091169060040161120a565b6020604051808303816000875af115801561083d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610861919061124f565b6108ad5760405162461bcd60e51b815260206004820152601f60248201527f7265676973746572696e6720676f76206661696c73616665206661696c656400604482015260640161008d565b600054600254604051636c525b1360e01b81526001600160a01b0392831692636c525b13926108e192911690600401611284565b6020604051808303816000875af1158015610900573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610924919061124f565b6109815760405162461bcd60e51b815260206004820152602860248201527f756e7265676973746572696e672050726f746f636f6c55706772616465467573604482015267194819985a5b195960c21b606482015260840161008d565b6001546001600160a01b0316ff5b60025460408051631c2eb17b60e31b815290516000926001600160a01b03169163e1758bd89160048083019260209291908290030181865afa1580156109d9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109fd91906111e6565b90506000816001600160a01b03166370a08231866040518263ffffffff1660e01b8152600401610a2d9190611284565b602060405180830381865afa158015610a4a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a6e9190611298565b6000805460405192935090916001600160a01b039091169063d1b7089a908690610a9c908990602401611284565b60408051601f198184030181529181526020820180516001600160e01b0316631619b41160e11b179052600254905160e085901b6001600160e01b0319168152610af79392916001600160a01b0316906000906004016112d5565b6000604051808303816000875af1158015610b16573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610b3e9190810190611326565b50905080610b845760405162461bcd60e51b81526020600482015260136024820152721cd95d15509254d8da195b594819985a5b1959606a1b604482015260640161008d565b6001600160a01b03861615610d5457600080546040805160048082526024820183526020820180516001600160e01b0316633bef870760e21b17905260025492516368db844d60e11b81526001600160a01b039485169563d1b7089a95610bf1958e9594911692016112d5565b6000604051808303816000875af1158015610c10573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610c389190810190611326565b50905080610c835760405162461bcd60e51b81526020600482015260186024820152771bdb19081d589a5cd8da195b5948195b990819985a5b195960421b604482015260640161008d565b60005460025460405163039de01d60e01b81526001600160a01b039283169263039de01d92610cba928b929091169060040161126a565b6020604051808303816000875af1158015610cd9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cfd919061124f565b610d545760405162461bcd60e51b815260206004820152602260248201527f756e7265676973746572696e67206f6c6420554249536368656d65206661696c604482015261195960f21b606482015260840161008d565b8115610e415760005460025460405163b9a04cdd60e01b81526001600160a01b038681166004830152888116602483015260448201869052918216606482015291169063b9a04cdd906084016020604051808303816000875af1158015610dbf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610de3919061124f565b905080610e415760405162461bcd60e51b815260206004820152602660248201527f66756e6473207472616e7366657220746f206e657720756269736368656d652060448201526519985a5b195960d21b606482015260840161008d565b505050505050565b600080546040516001600160a01b039091169063d1b7089a908690610e7490879087906024016113cd565b60408051601f198184030181529181526020820180516001600160e01b0316634ab01f5b60e01b179052600254905160e085901b6001600160e01b0319168152610ecf9392916001600160a01b0316906000906004016112d5565b6000604051808303816000875af1158015610eee573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610f169190810190611326565b50905080610f755760405162461bcd60e51b815260206004820152602660248201527f43616c6c696e67207365744e616d6553657276696365436f6e7472616374732060448201526519985a5b195960d21b606482015260840161008d565b50505050565b6001600160a01b0381168114610f9057600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715610fd157610fd1610f93565b604052919050565b8035610fe481610f7b565b919050565b60008083601f840112610ffb57600080fd5b5081356001600160401b0381111561101257600080fd5b6020830191508360208260051b850101111561102d57600080fd5b9250929050565b600080600080600080600060a0888a03121561104f57600080fd5b873561105a81610f7b565b96506020888101356001600160401b038082111561107757600080fd5b818b0191508b601f83011261108b57600080fd5b81358181111561109d5761109d610f93565b8060051b6110ac858201610fa9565b918252838101850191858101908f8411156110c657600080fd5b948601945b838610156110f057853592506110e083610f7b565b82825294860194908601906110cb565b9b506111029250505060408c01610fd9565b975060608b013592508083111561111857600080fd5b6111248c848d01610fe9565b909750955060808b013592508691508083111561114057600080fd5b505061114e8a828b01610fe9565b989b979a50959850939692959293505050565b60008060006060848603121561117657600080fd5b833561118181610f7b565b9250602084013561119181610f7b565b915060408401356111a181610f7b565b809150509250925092565b6020808252600a908201526937b7363c9037bbb732b960b11b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156111f857600080fd5b815161120381610f7b565b9392505050565b6001600160a01b03948516815260208101939093526001600160e01b0319919091166040830152909116606082015260800190565b80518015158114610fe457600080fd5b60006020828403121561126157600080fd5b6112038261123f565b6001600160a01b0392831681529116602082015260400190565b6001600160a01b0391909116815260200190565b6000602082840312156112aa57600080fd5b5051919050565b60005b838110156112cc5781810151838201526020016112b4565b50506000910152565b600060018060a01b0380871683526080602084015285518060808501526113038160a0860160208a016112b1565b9416604083015250606081019190915260a0601f909201601f1916010192915050565b6000806040838503121561133957600080fd5b6113428361123f565b60208401519092506001600160401b038082111561135f57600080fd5b818501915085601f83011261137357600080fd5b81518181111561138557611385610f93565b611398601f8201601f1916602001610fa9565b91508082528660208285010111156113af57600080fd5b6113c08160208401602086016112b1565b5080925050509250929050565b604080825283519082018190526000906020906060840190828701845b82811015611406578151845292840192908401906001016113ea565b5050508381038285015284518082528583019183019060005b818110156114445783516001600160a01b03168352928401929184019160010161141f565b509097965050505050505056fea2646970667358221220567def0da1ab55faf8e70fde0499a3b58794b1b306713f39b38b04411e6c5baf64736f6c63430008130033", "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100365760003560e01c80632224deea1461003b5780635c0d087b14610050575b600080fd5b61004e610049366004611034565b610063565b005b61004e61005e366004611161565b610511565b6001546001600160a01b031633146100965760405162461bcd60e51b815260040161008d906111ac565b60405180910390fd5b8281146100d75760405162461bcd60e51b815260206004820152600f60248201526e0d8cadccee8d040dad2e6dac2e8c6d608b1b604482015260640161008d565b85516004146101265760405162461bcd60e51b815260206004820152601b60248201527a0ded8c840c6dedce8e4c2c6e8e640e6d2f4ca40dad2e6dac2e8c6d602b1b604482015260640161008d565b6101658660028151811061013c5761013c6111d0565b60200260200101518688600381518110610158576101586111d0565b602002602001015161098f565b6101d38785858080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525050604080516020808902828101820190935288825290935088925087918291850190849080828437600092019190915250610e4992505050565b60005460405163bf40fac160e01b81526020600482015260086024820152674944454e5449545960c01b60448201526001600160a01b039182169163e869d45f91908a169063bf40fac190606401602060405180830381865afa15801561023e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061026291906111e6565b6002546040516001600160e01b031960e085901b1681526102999291600091600160e01b916001600160a01b03169060040161120a565b6020604051808303816000875af11580156102b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102dc919061124f565b6103265760405162461bcd60e51b815260206004820152601b60248201527a1c9959da5cdd195c9a5b99c81259195b9d1a5d1e4819985a5b1959602a1b604482015260640161008d565b60006001600160a01b031686600081518110610344576103446111d0565b60200260200101516001600160a01b0316146105085760005460405163bf40fac160e01b815260206004820152600a60248201526923a7a7a22227a62620a960b11b60448201526001600160a01b039182169163039de01d91908a169063bf40fac190606401602060405180830381865afa1580156103c7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103eb91906111e6565b6001600160a01b0316634b75f54f6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610428573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061044c91906111e6565b6002546040516001600160e01b031960e085901b16815261047a92916001600160a01b03169060040161126a565b6020604051808303816000875af1158015610499573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104bd919061124f565b6105085760405162461bcd60e51b815260206004820152601c60248201527b1d5b9c9959da5cdd195c9a5b99c8199bdc9b5d5b184819985a5b195960221b604482015260640161008d565b50505050505050565b6001546001600160a01b0316331461053b5760405162461bcd60e51b815260040161008d906111ac565b6001600160a01b0383161561061c5760005460025460405163039de01d60e01b81526001600160a01b039283169263039de01d926105819288929091169060040161126a565b6020604051808303816000875af11580156105a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105c4919061124f565b61061c5760405162461bcd60e51b8152602060048201526024808201527f756e7265676973746572696e6720736368656d655265676973747261722066616044820152631a5b195960e21b606482015260840161008d565b6001600160a01b038216156106fc5760005460025460405163039de01d60e01b81526001600160a01b039283169263039de01d926106629287929091169060040161126a565b6020604051808303816000875af1158015610681573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106a5919061124f565b6106fc5760405162461bcd60e51b815260206004820152602260248201527f756e7265676973746572696e672075706772616465536368656d65206661696c604482015261195960f21b606482015260840161008d565b6000805460025460405163e869d45f60e01b81526001600160a01b039283169363e869d45f9361073a938793601f60e01b929091169060040161120a565b6020604051808303816000875af1158015610759573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061077d919061124f565b6107da5760405162461bcd60e51b815260206004820152602860248201527f7265676973746572696e6720636f6d706f756e64566f74696e674d616368696e604482015267194819985a5b195960c21b606482015260840161008d565b6000805460015460025460405163e869d45f60e01b81526001600160a01b039384169463e869d45f9461081e948116939192601f60e01b929091169060040161120a565b6020604051808303816000875af115801561083d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610861919061124f565b6108ad5760405162461bcd60e51b815260206004820152601f60248201527f7265676973746572696e6720676f76206661696c73616665206661696c656400604482015260640161008d565b600054600254604051636c525b1360e01b81526001600160a01b0392831692636c525b13926108e192911690600401611284565b6020604051808303816000875af1158015610900573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610924919061124f565b6109815760405162461bcd60e51b815260206004820152602860248201527f756e7265676973746572696e672050726f746f636f6c55706772616465467573604482015267194819985a5b195960c21b606482015260840161008d565b6001546001600160a01b0316ff5b60025460408051631c2eb17b60e31b815290516000926001600160a01b03169163e1758bd89160048083019260209291908290030181865afa1580156109d9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109fd91906111e6565b90506000816001600160a01b03166370a08231866040518263ffffffff1660e01b8152600401610a2d9190611284565b602060405180830381865afa158015610a4a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a6e9190611298565b6000805460405192935090916001600160a01b039091169063d1b7089a908690610a9c908990602401611284565b60408051601f198184030181529181526020820180516001600160e01b0316631619b41160e11b179052600254905160e085901b6001600160e01b0319168152610af79392916001600160a01b0316906000906004016112d5565b6000604051808303816000875af1158015610b16573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610b3e9190810190611326565b50905080610b845760405162461bcd60e51b81526020600482015260136024820152721cd95d15509254d8da195b594819985a5b1959606a1b604482015260640161008d565b6001600160a01b03861615610d5457600080546040805160048082526024820183526020820180516001600160e01b0316633bef870760e21b17905260025492516368db844d60e11b81526001600160a01b039485169563d1b7089a95610bf1958e9594911692016112d5565b6000604051808303816000875af1158015610c10573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610c389190810190611326565b50905080610c835760405162461bcd60e51b81526020600482015260186024820152771bdb19081d589a5cd8da195b5948195b990819985a5b195960421b604482015260640161008d565b60005460025460405163039de01d60e01b81526001600160a01b039283169263039de01d92610cba928b929091169060040161126a565b6020604051808303816000875af1158015610cd9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cfd919061124f565b610d545760405162461bcd60e51b815260206004820152602260248201527f756e7265676973746572696e67206f6c6420554249536368656d65206661696c604482015261195960f21b606482015260840161008d565b8115610e415760005460025460405163b9a04cdd60e01b81526001600160a01b038681166004830152888116602483015260448201869052918216606482015291169063b9a04cdd906084016020604051808303816000875af1158015610dbf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610de3919061124f565b905080610e415760405162461bcd60e51b815260206004820152602660248201527f66756e6473207472616e7366657220746f206e657720756269736368656d652060448201526519985a5b195960d21b606482015260840161008d565b505050505050565b600080546040516001600160a01b039091169063d1b7089a908690610e7490879087906024016113cd565b60408051601f198184030181529181526020820180516001600160e01b0316634ab01f5b60e01b179052600254905160e085901b6001600160e01b0319168152610ecf9392916001600160a01b0316906000906004016112d5565b6000604051808303816000875af1158015610eee573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610f169190810190611326565b50905080610f755760405162461bcd60e51b815260206004820152602660248201527f43616c6c696e67207365744e616d6553657276696365436f6e7472616374732060448201526519985a5b195960d21b606482015260840161008d565b50505050565b6001600160a01b0381168114610f9057600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715610fd157610fd1610f93565b604052919050565b8035610fe481610f7b565b919050565b60008083601f840112610ffb57600080fd5b5081356001600160401b0381111561101257600080fd5b6020830191508360208260051b850101111561102d57600080fd5b9250929050565b600080600080600080600060a0888a03121561104f57600080fd5b873561105a81610f7b565b96506020888101356001600160401b038082111561107757600080fd5b818b0191508b601f83011261108b57600080fd5b81358181111561109d5761109d610f93565b8060051b6110ac858201610fa9565b918252838101850191858101908f8411156110c657600080fd5b948601945b838610156110f057853592506110e083610f7b565b82825294860194908601906110cb565b9b506111029250505060408c01610fd9565b975060608b013592508083111561111857600080fd5b6111248c848d01610fe9565b909750955060808b013592508691508083111561114057600080fd5b505061114e8a828b01610fe9565b989b979a50959850939692959293505050565b60008060006060848603121561117657600080fd5b833561118181610f7b565b9250602084013561119181610f7b565b915060408401356111a181610f7b565b809150509250925092565b6020808252600a908201526937b7363c9037bbb732b960b11b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156111f857600080fd5b815161120381610f7b565b9392505050565b6001600160a01b03948516815260208101939093526001600160e01b0319919091166040830152909116606082015260800190565b80518015158114610fe457600080fd5b60006020828403121561126157600080fd5b6112038261123f565b6001600160a01b0392831681529116602082015260400190565b6001600160a01b0391909116815260200190565b6000602082840312156112aa57600080fd5b5051919050565b60005b838110156112cc5781810151838201526020016112b4565b50506000910152565b600060018060a01b0380871683526080602084015285518060808501526113038160a0860160208a016112b1565b9416604083015250606081019190915260a0601f909201601f1916010192915050565b6000806040838503121561133957600080fd5b6113428361123f565b60208401519092506001600160401b038082111561135f57600080fd5b818501915085601f83011261137357600080fd5b81518181111561138557611385610f93565b611398601f8201601f1916602001610fa9565b91508082528660208285010111156113af57600080fd5b6113c08160208401602086016112b1565b5080925050509250929050565b604080825283519082018190526000906020906060840190828701845b82811015611406578151845292840192908401906001016113ea565b5050508381038285015284518082528583019183019060005b818110156114445783516001600160a01b03168352928401929184019160010161141f565b509097965050505050505056fea2646970667358221220567def0da1ab55faf8e70fde0499a3b58794b1b306713f39b38b04411e6c5baf64736f6c63430008130033", "linkReferences": {}, "deployedLinkReferences": {} }