Skip to content

Instantly share code, notes, and snippets.

@naiemk
Last active May 14, 2024 22:53
Show Gist options
  • Save naiemk/720a3ec4af0bf8fe3aba096bbb11886a to your computer and use it in GitHub Desktop.
Save naiemk/720a3ec4af0bf8fe3aba096bbb11886a to your computer and use it in GitHub Desktop.
IronSafe deploying

How to deploy IronSafe

By calling deployOwnable on the FerrumDeployer contract on the target chain.

  1. Calculate the data field:

Go to the Abi Encoder. For the argument type enter:

uint256,address[],bytes32

This is the order of parameters:

minSignatures, [addresses (comma separated)], salt

For example:

3,[0x9FC3da866e7DF3a1c57adE1a97c9f00a70f010c8,0x9FC3da866e7DF3a1c57adE1a97c9f00a70f010c8],0x074d2c0fb4515941ad88a5e047a3a07f27a1a8fd4951d9fd9ec3b00cd33a4a08

Copy the resulting encoded data for the data field.

  1. Now go back to the FerrumDeployer write page, and select deployOwnable.

For owner enter the contract owner address.

Enter the following for the bytecode field:

0x6101206040523480156200001257600080fd5b506040518060400160405280601681526020017f46455252554d5f42415349435f49524f4e5f5341464500000000000000000000815250604051806040016040528060078152602001663030302e30303160c81b815250620000836200007d620001c260201b60201c565b620001c6565b815160209283012081519183019190912060c082815260e08290524660a0818152604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f81890181905281830197909752606081019590955260808086019390935230858301528051808603909201825292840180845281519190960120905261010092909252638eb36e3d60e01b90925251600091829182913391638eb36e3d9160c480820192869290919082900301818387803b1580156200014857600080fd5b505af11580156200015d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526200018791908101906200085d565b8060200190518101906200019c919062000916565b600881905591945092509050620001b96001808560008662000216565b50505062000a67565b3390565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b038516620002725760405162461bcd60e51b815260206004820152601660248201527f4d53433a2071756f72756d49642072657175697265640000000000000000000060448201526064015b60405180910390fd5b6000815111620002c55760405162461bcd60e51b815260206004820152601760248201527f4d53433a20616464726573736573207265717569726564000000000000000000604482015260640162000269565b61ffff8316620003185760405162461bcd60e51b815260206004820152601b60248201527f4d53433a206d696e5369676e6174757265732072657175697265640000000000604482015260640162000269565b80518361ffff1611156200036f5760405162461bcd60e51b815260206004820152601c60248201527f4d53433a206d696e5369676e61747572657320746f6f206c6172676500000000604482015260640162000269565b6001600160a01b038581166000908152600460205260409020541615620003d95760405162461bcd60e51b815260206004820152601860248201527f4d53433a20616c726561647920696e697469616c697a65640000000000000000604482015260640162000269565b60ff82161580620003f65750836001600160401b03168260ff1614155b620004445760405162461bcd60e51b815260206004820152601f60248201527f4d53433a2073656c66206f776e657273686970206e6f7420616c6c6f77656400604482015260640162000269565b6001600160401b038416156200046857620004686001600160401b03851662000792565b604080516080810182526001600160a01b038088168083526001600160401b03808916602080860191825261ffff808b1687890190815260ff808c1660608a019081526000888152600490955299842089518154965193519b51909216600160f01b0260ff60f01b199b909416600160e01b0261ffff60e01b1993909716600160a01b02600160a01b600160e01b0319929099166001600160a01b031996871617919091169790971716939093179690961691909117909255600780546001810182559085527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c688018054909216179055905b8251811015620006f35760006001600160a01b0316600360008584815181106200059457634e487b7160e01b600052603260045260246000fd5b6020908102919091018101516001600160a01b03908116835290820192909252604001600020541614620006175760405162461bcd60e51b815260206004820152602360248201527f4d53433a206f6e6c79206f6e652071756f72756d2070657220737562736372696044820152623132b960e91b606482015260840162000269565b81600360008584815181106200063d57634e487b7160e01b600052603260045260246000fd5b6020908102919091018101516001600160a01b03908116835282820193909352604091820160002084518154928601519386015160609096015160ff16600160f01b0260ff60f01b1961ffff909716600160e01b0261ffff60e01b196001600160401b03909616600160a01b02600160a01b600160e01b0319939097166001600160a01b031990951694909417919091169490941792909216179290921617905580620006ea8162000a29565b9150506200055a565b5081516001600160a01b0387166000908152600560205260409081902091909155517feeca632c799e4f5f6ce0dceb8ca385a65a53f15a007d255827c1d53d28f80bb4906200078290839081516001600160a01b031681526020808301516001600160401b03169082015260408083015161ffff169082015260609182015160ff169181019190915260800190565b60405180910390a1505050505050565b80620007e15760405162461bcd60e51b815260206004820152601560248201527f4d53433a2067726f757049642072657175697265640000000000000000000000604482015260640162000269565b60008181526006602052604090205460ff1615620008425760405162461bcd60e51b815260206004820152601a60248201527f4d53433a2067726f75704964206973206e6f7420756e69717565000000000000604482015260640162000269565b6000908152600660205260409020805460ff19166001179055565b6000602080838503121562000870578182fd5b82516001600160401b038082111562000887578384fd5b818501915085601f8301126200089b578384fd5b815181811115620008b057620008b062000a51565b620008c4601f8201601f19168501620009f6565b91508082528684828501011115620008da578485fd5b845b81811015620008f9578381018501518382018601528401620008dc565b818111156200090a57858583850101525b50909695505050505050565b6000806000606084860312156200092b578182fd5b8351602080860151919450906001600160401b03808211156200094c578485fd5b818701915087601f83011262000960578485fd5b81518181111562000975576200097562000a51565b838102915062000987848301620009f6565b8181528481019084860184860187018c1015620009a2578889fd5b8895505b83861015620009de57805194506001600160a01b0385168514620009c8578889fd5b84835260019590950194918601918601620009a6565b50809750505050505050604084015190509250925092565b604051601f8201601f191681016001600160401b038111828210171562000a215762000a2162000a51565b604052919050565b600060001982141562000a4a57634e487b7160e01b81526011600452602481fd5b5060010190565b634e487b7160e01b600052604160045260246000fd5b60805160a05160c05160e051610100516133c362000aac600039600061252a0152600061257901526000612554015260006124d6015260006124ff01526133c36000f3fe6080604052600436106101a05760003560e01c8063879cbb79116100ec578063c21289e51161008a578063f851a44011610064578063f851a440146105b0578063f85f1ac3146105d0578063f9257a51146105f0578063ffa1ad7414610610576101a7565b8063c21289e51461054b578063f2fde38b14610560578063f406518914610580576101a7565b8063aef18bf7116100c6578063aef18bf714610471578063b61950e9146104b1578063bc7b440914610510578063be0db1f914610530576101a7565b8063879cbb79146103d55780638da5cb5b146103f5578063a3f4df7e14610422576101a7565b8063585f37c311610159578063715018a611610133578063715018a61461034a57806376593d721461035f5780637e0ec05f1461038c57806386d8533d146103ac576101a7565b8063585f37c3146102ea57806360d1691a1461030a578063704b6c021461032a576101a7565b80630434f7c3146101ac5780630d469f05146101ce5780631928de33146101f75780632d3ea9b91461020d57806332a93efb1461022d57806352071537146102ca576101a7565b366101a757005b600080fd5b3480156101b857600080fd5b506101cc6101c7366004612f34565b610643565b005b3480156101da57600080fd5b506101e460085481565b6040519081526020015b60405180910390f35b34801561020357600080fd5b506101e4600a5481565b34801561021957600080fd5b506101cc610228366004612eb6565b610771565b34801561023957600080fd5b5061028c610248366004612e26565b6004602052600090815260409020546001600160a01b03811690600160a01b81046001600160401b031690600160e01b810461ffff1690600160f01b900460ff1684565b604080516001600160a01b0390951685526001600160401b03909316602085015261ffff9091169183019190915260ff1660608201526080016101ee565b3480156102d657600080fd5b506101cc6102e53660046130f2565b610876565b3480156102f657600080fd5b506101cc610305366004613003565b6108b4565b34801561031657600080fd5b506101cc610325366004612f34565b6108f1565b34801561033657600080fd5b506101cc610345366004612e26565b610ab8565b34801561035657600080fd5b506101cc610b3b565b34801561036b57600080fd5b506101e461037a366004612e26565b60056020526000908152604090205481565b34801561039857600080fd5b506101cc6103a7366004612f34565b610b76565b3480156103b857600080fd5b506103c261010081565b60405161ffff90911681526020016101ee565b3480156103e157600080fd5b506101cc6103f0366004612f99565b610b88565b34801561040157600080fd5b5061040a610ecc565b6040516001600160a01b0390911681526020016101ee565b34801561042e57600080fd5b506104646040518060400160405280601681526020017546455252554d5f42415349435f49524f4e5f5341464560501b81525081565b6040516101ee919061318f565b34801561047d57600080fd5b506104a161048c3660046130da565b60026020526000908152604090205460ff1681565b60405190151581526020016101ee565b3480156104bd57600080fd5b5061028c6104cc366004612e26565b6003602052600090815260409020546001600160a01b03811690600160a01b81046001600160401b031690600160e01b810461ffff1690600160f01b900460ff1684565b34801561051c57600080fd5b5061040a61052b3660046130da565b610edc565b34801561053c57600080fd5b506101cc6102e5366004612e26565b34801561055757600080fd5b5061040a600181565b34801561056c57600080fd5b506101cc61057b366004612e26565b610f06565b34801561058c57600080fd5b506104a161059b366004612e26565b60096020526000908152604090205460ff1681565b3480156105bc57600080fd5b5060015461040a906001600160a01b031681565b3480156105dc57600080fd5b506101cc6105eb366004612fc7565b610fa6565b3480156105fc57600080fd5b506101cc61060b366004612e40565b6110ef565b34801561061c57600080fd5b50610464604051806040016040528060078152602001663030302e30303160c81b81525081565b81806001600160401b031642106106755760405162461bcd60e51b815260040161066c906131ee565b60405180910390fd5b61068262093a80426132ac565b816001600160401b0316106106a95760405162461bcd60e51b815260040161066c9061325a565b6001600160a01b03851660009081526009602052604090205460ff166107045760405162461bcd60e51b815260206004820152601060248201526f4253493a20686173206e6f207665746f60801b604482015260640161066c565b60007f3f55b52cfa857edcc617b1997ae30314b3eea4160899c532599580f22e4b100786868660405160200161073d9493929190613162565b6040516020818303038152906040528051906020012090506107608186856114d3565b61076986611682565b505050505050565b81806001600160401b0316421061079a5760405162461bcd60e51b815260040161066c906131ee565b6107a762093a80426132ac565b816001600160401b0316106107ce5760405162461bcd60e51b815260040161066c9061325a565b604080517f87da04f5aad475dccb7563ea2524dedf575c46813201cdb0fc511996edfa951c60208201526001600160a01b03808a169282019290925290871660608201526080810186905260a081018590526001600160401b03841660c082015260009060e0016040516020818303038152906040528051906020012090506108588186856114d3565b61086c6001600160a01b03881689886116bb565b5050505050505050565b60405162461bcd60e51b8152602060048201526013602482015272141354d0ce88139bdd081cdd5c1c1bdc9d1959606a1b604482015260640161066c565b60405162461bcd60e51b8152602060048201526012602482015271109254ce881b9bdd081cdd5c1c1bdc9d195960721b604482015260640161066c565b81806001600160401b0316421061091a5760405162461bcd60e51b815260040161066c906131ee565b61092762093a80426132ac565b816001600160401b03161061094e5760405162461bcd60e51b815260040161066c9061325a565b6001600160a01b03851660009081526009602052604090205460ff16156109af5760405162461bcd60e51b81526020600482015260156024820152744249533a20616c726561647920686173207665746f60581b604482015260640161066c565b6001600160a01b0385811660009081526003602052604090205416610a165760405162461bcd60e51b815260206004820152601c60248201527f4249533a204e6f7420612071756f72756d207375627363726962657200000000604482015260640161066c565b60007ff1b7b29fe1415287f539576b05b90596135aa8fec5e25c82131972e9987d9164868686604051602001610a4f9493929190613162565b604051602081830303815290604052805190602001209050610a728186856114d3565b6001600160a01b0386166000908152600960205260408120805460ff19166001908117909155600a805491929091610aab9084906132ac565b9091555050505050505050565b33610ac1610ecc565b6001600160a01b031614610ae75760405162461bcd60e51b815260040161066c90613225565b600180546001600160a01b0319166001600160a01b0383169081179091556040519081527f8fe72c3e0020beb3234e76ae6676fa576fbfcae600af1c4fea44784cf0db329c9060200160405180910390a150565b33610b44610ecc565b6001600160a01b031614610b6a5760405162461bcd60e51b815260040161066c90613225565b610b74600061170d565b565b610b828484848461175d565b50505050565b81806001600160401b03164210610bb15760405162461bcd60e51b815260040161066c906131ee565b610bbe62093a80426132ac565b816001600160401b031610610be55760405162461bcd60e51b815260040161066c9061325a565b6001600160a01b038616610c345760405162461bcd60e51b81526020600482015260166024820152751354d0ce881c5d5bdc9d5b5259081c995c5d5a5c995960521b604482015260640161066c565b60008561ffff1611610c885760405162461bcd60e51b815260206004820152601a60248201527f4d53433a206d696e5369676e6174757265207265717569726564000000000000604482015260640161066c565b83610ca55760405162461bcd60e51b815260040161066c906131c2565b6001600160a01b0386811660009081526004602090815260409182902082516080810184529054938416808252600160a01b85046001600160401b031692820192909252600160e01b840461ffff1692810192909252600160f01b90920460ff16606082015290610d585760405162461bcd60e51b815260206004820152601760248201527f4d53433a2071756f72756d4964206e6f7420666f756e64000000000000000000604482015260640161066c565b80516001600160a01b031660009081526005602052604090205461ffff87161115610dc55760405162461bcd60e51b815260206004820152601e60248201527f4d53433a206d696e5369676e617475726520697320746f6f206c617267650000604482015260640161066c565b604080517f6c833aedce2bee393462c4da8172b69dd1e5439023afcc96c222e95a7d68db8d60208201526001600160a01b0389169181019190915261ffff87166060820152608081018690526001600160401b03851660a082015260009060c0016040516020818303038152906040528051906020012090506000826060015160ff1660001415610e5a578260200151610e63565b826060015160ff165b9050610e8b82846060015160ff1660001415610e80578451610e83565b60005b898489611793565b5050506001600160a01b039095166000908152600460205260409020805461ffff909516600160e01b0261ffff60e01b199095169490941790935550505050565b6000546001600160a01b03165b90565b60078181548110610eec57600080fd5b6000918252602090912001546001600160a01b0316905081565b33610f0f610ecc565b6001600160a01b031614610f355760405162461bcd60e51b815260040161066c90613225565b6001600160a01b038116610f9a5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161066c565b610fa38161170d565b50565b81806001600160401b03164210610fcf5760405162461bcd60e51b815260040161066c906131ee565b610fdc62093a80426132ac565b816001600160401b0316106110035760405162461bcd60e51b815260040161066c9061325a565b600b5460ff16156110445760405162461bcd60e51b815260206004820152600b60248201526a109254ce88131bd8dad95960aa1b604482015260640161066c565b600b805460ff19166001179055604080517f42127f70ba982761a840f791b472bbb5eba954a76d2845818f1aa82bbfedb7f460208201526001600160a01b0388169181019190915260608101869052608081018590526001600160401b03841660a082015260009060c0016040516020818303038152906040528051906020012090506110d28186856114d3565b6110dc8787611a2a565b5050600b805460ff191690555050505050565b81806001600160401b031642106111185760405162461bcd60e51b815260040161066c906131ee565b61112562093a80426132ac565b816001600160401b03161061114c5760405162461bcd60e51b815260040161066c9061325a565b6001600160a01b03851661119b5760405162461bcd60e51b81526020600482015260166024820152751354d0ce881c5d5bdc9d5b5259081c995c5d5a5c995960521b604482015260640161066c565b6001600160a01b0386166111e95760405162461bcd60e51b81526020600482015260156024820152741354d0ce881859191c995cdcc81c995c5d5a5c9959605a1b604482015260640161066c565b836112065760405162461bcd60e51b815260040161066c906131c2565b604080517f0aaa40376edf8ccfad218e0c44fab544d257e8923fa935c34a98892fa37b226d60208201526001600160a01b03808916928201929092529086166060820152608081018590526001600160401b03841660a082015260009060c00160408051808303601f1901815282825280516020918201206001600160a01b038a811660009081526004845284902060808601855254908116808652600160a01b82046001600160401b031693860193909352600160e01b810461ffff1693850193909352600160f01b90920460ff1660608401529092506113225760405162461bcd60e51b81526020600482015260156024820152741354d0ce881c5d5bdc9d5b481b9bdd08199bdd5b99605a1b604482015260640161066c565b6000816060015160ff166000141561133e578160200151611347565b816060015160ff165b905061136483836060015160ff1660001415610e80578351610e83565b6001600160a01b0389811660009081526003602052604090205416156113cc5760405162461bcd60e51b815260206004820152601d60248201527f4d53433a207573657220616c726561647920696e20612071756f72756d000000604482015260640161066c565b6001600160a01b03808a1660009081526003602090815260408083208651815484890151848a015160608b015160ff16600160f01b0260ff60f01b1961ffff909216600160e01b0261ffff60e01b196001600160401b03909416600160a01b0267ffffffffffffffff60a01b1996909b166001600160a01b031990951685179590951699909917919091169290921791909116959095179055928252600590529081208054600192906114809084906132ac565b9091555050604080516001600160a01b03808b1682528b1660208201527f068438db0c4d31cc5d4df24c43dd9e12574a9ef886dcbe84f1b9f955136f9e7e910160405180910390a1505050505050505050565b60008281526002602052604090205460ff161561152e5760405162461bcd60e51b81526020600482015260196024820152781354d0ce8813595cdcd859d948185b1c9958591e481d5cd959603a1b604482015260640161066c565b600061153984611b04565b905060008061154a83600186611b5a565b91509150816115945760405162461bcd60e51b81526020600482015260166024820152754249533a20696e76616c6964207369676e617475726560501b604482015260640161066c565b6000858152600260205260409020805460ff19166001179055600a546115bc5750505061167d565b60005b815181101561163357600960008383815181106115ec57634e487b7160e01b600052603260045260246000fd5b6020908102919091018101516001600160a01b031682528101919091526040016000205460ff1615611621575050505061167d565b8061162b81613346565b9150506115bf565b50600a54156107695760405162461bcd60e51b81526020600482015260166024820152754249533a206e6f207665746f207369676e617475726560501b604482015260640161066c565b505050565b6001600a60008282546116959190613303565b90915550506001600160a01b03166000908152600960205260409020805460ff19169055565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b17905261167d908490612142565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b61176984848484612214565b6001600160a01b03841660009081526009602052604090205460ff1615610b8257610b8284611682565b80516117e15760405162461bcd60e51b815260206004820152601c60248201527f4d53433a206d756c74695369676e617475726520726571756972656400000000604482015260640161066c565b60006117ec86611b04565b90506000806117fc838686611b5a565b91509150816118465760405162461bcd60e51b81526020600482015260166024820152754d53433a20496e76616c6964207369676e617475726560501b604482015260640161066c565b60008681526002602052604090205460ff16156118a15760405162461bcd60e51b81526020600482015260196024820152781354d0ce8813595cdcd859d948185b1c9958591e481d5cd959603a1b604482015260640161066c565b6001600160a01b038716158061190b5750866001600160a01b031660036000836000815181106118e157634e487b7160e01b600052603260045260246000fd5b6020908102919091018101516001600160a01b039081168352908201929092526040016000205416145b61194b5760405162461bcd60e51b81526020600482015260116024820152704d53433a2077726f6e672071756f72756d60781b604482015260640161066c565b6000868152600260205260408120805460ff191660011790555b81518110156119d9576009600083838151811061199257634e487b7160e01b600052603260045260246000fd5b6020908102919091018101516001600160a01b031682528101919091526040016000205460ff16156119c75750505050611a23565b806119d181613346565b915050611965565b50600a541561086c5760405162461bcd60e51b81526020600482015260166024820152754249533a206e6f207665746f207369676e617475726560501b604482015260640161066c565b5050505050565b604080516000808252602082019092526001600160a01b038416908390604051611a549190613146565b60006040518083038185875af1925050503d8060008114611a91576040519150601f19603f3d011682016040523d82523d6000602084013e611a96565b606091505b505090508061167d5760405162461bcd60e51b815260206004820152603460248201527f5472616e7366657248656c7065723a3a736166655472616e736665724554483a60448201527308115512081d1c985b9cd9995c8819985a5b195960621b606482015260840161066c565b6000611b52611b116124d2565b8360405161190160f01b6020820152602281018390526042810182905260009060620160405160208183030381529060405280519060200120905092915050565b90505b919050565b60006060825160001415611bb05760405162461bcd60e51b815260206004820152601c60248201527f4d53433a206d756c74695369676e617475726520726571756972656400000000604482015260640161066c565b6000611bbb846125c9565b90506000815111611c0e5760405162461bcd60e51b815260206004820152601b60248201527f4d53433a206e6f207a65726f206c656e207369676e6174757265730000000000604482015260640161066c565b80516001600160401b03811115611c3557634e487b7160e01b600052604160045260246000fd5b604051908082528060200260200182016040528015611c5e578160200160208202803683370190505b5091506000611cf38783600081518110611c8857634e487b7160e01b600052603260045260246000fd5b60200260200101516000015184600081518110611cb557634e487b7160e01b600052603260045260246000fd5b60200260200101516020015185600081518110611ce257634e487b7160e01b600052603260045260246000fd5b60200260200101516040015161282e565b90508083600081518110611d1757634e487b7160e01b600052603260045260246000fd5b6001600160a01b039283166020918202929092018101919091528282166000908152600390915260409020541680611d6557604080516000808252602082019092529450945050505061213a565b6001600160401b0387161580611da557506001600160a01b0382166000908152600360205260409020546001600160401b03888116600160a01b90920416145b611df15760405162461bcd60e51b815260206004820152601f60248201527f4d53433a20696e76616c69642067726f7570496420666f72207369676e657200604482015260640161066c565b6001600160a01b03818116600090815260046020908152604091829020825160808101845290549384168152600160a01b84046001600160401b031691810191909152600160e01b830461ffff1691810191909152600160f01b90910460ff16606082015260015b84518110156120d757611ede8a868381518110611e8657634e487b7160e01b600052603260045260246000fd5b602002602001015160000151878481518110611eb257634e487b7160e01b600052603260045260246000fd5b602002602001015160200151888581518110611ce257634e487b7160e01b600052603260045260246000fd5b6001600160a01b0380821660009081526003602052604090205491955016925082611f21576040805160008082526020820190925296509650505050505061213a565b826001600160a01b031682600001516001600160a01b031614611f965760405162461bcd60e51b815260206004820152602760248201527f4d53433a20616c6c207369676e657273206d757374206265206f662073616d656044820152662071756f72756d60c81b606482015260840161066c565b6001600160401b0389161580611fc15750886001600160401b031682602001516001600160401b0316145b61200d5760405162461bcd60e51b815260206004820152601f60248201527f4d53433a20696e76616c69642067726f7570496420666f72207369676e657200604482015260640161066c565b8386828151811061202e57634e487b7160e01b600052603260045260246000fd5b6001600160a01b039283166020918202929092010152841686612052600184613303565b8151811061207057634e487b7160e01b600052603260045260246000fd5b60200260200101516001600160a01b0316106120c55760405162461bcd60e51b81526020600482015260146024820152731354d0ce8814da59dcc81b9bdd081cdbdc9d195960621b604482015260640161066c565b806120cf81613346565b915050611e59565b50806040015161ffff16845110156121315760405162461bcd60e51b815260206004820152601a60248201527f4d53433a206e6f7420656e6f756768207369676e617475726573000000000000604482015260640161066c565b60019550505050505b935093915050565b6000612197826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166128569092919063ffffffff16565b80519091501561167d57808060200190518101906121b591906130ba565b61167d5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b606482015260840161066c565b81806001600160401b0316421061223d5760405162461bcd60e51b815260040161066c906131ee565b61224a62093a80426132ac565b816001600160401b0316106122715760405162461bcd60e51b815260040161066c9061325a565b6001600160a01b0385166122bf5760405162461bcd60e51b81526020600482015260156024820152741354d0ce881859191c995cdcc81c995c5d5a5c9959605a1b604482015260640161066c565b836122dc5760405162461bcd60e51b815260040161066c906131c2565b6001600160a01b0385811660009081526003602090815260409182902082516080810184529054938416808252600160a01b85046001600160401b031692820192909252600160e01b840461ffff1692810192909252600160f01b90920460ff1660608201529061238f5760405162461bcd60e51b815260206004820152601b60248201527f4d53433a20737562736372697074696f6e206e6f7420666f756e640000000000604482015260640161066c565b60007fb7db33073fa469282b4192791ac3bc1b470d9af5bc9d90e861856feb1bf166578787876040516020016123c89493929190613162565b6040516020818303038152906040528051906020012090506000826060015160ff16600014156123fc578260200151612405565b826060015160ff165b905061242282846060015160ff1660001415610e80578451610e83565b82516001600160a01b0390811660009081526005602090815260408083205487519094168352600490915290205461246690600160e01b900461ffff166001613286565b61ffff168110156124b95760405162461bcd60e51b815260206004820152601c60248201527f4d53433a2071756f72756d206265636f6d6573207573757361626c6500000000604482015260640161066c565b6124c789856000015161286f565b505050505050505050565b60007f000000000000000000000000000000000000000000000000000000000000000046141561252357507f0000000000000000000000000000000000000000000000000000000000000000610ed9565b50604080517f00000000000000000000000000000000000000000000000000000000000000006020808301919091527f0000000000000000000000000000000000000000000000000000000000000000828401527f000000000000000000000000000000000000000000000000000000000000000060608301524660808301523060a0808401919091528351808403909101815260c09092019092528051910120610ed9565b60606000602083516125db91906132c4565b905060416125ea8260206132e4565b6125f59060026132e4565b6125ff91906132c4565b90506000816020855161261291906132c4565b61261c9190613303565b90506126296002836132c4565b6126349060026132e4565b61263e9083613303565b156126835760405162461bcd60e51b81526020600482015260156024820152744d534c3a20496e76616c6964207369672073697a6560581b604482015260640161066c565b61268e6002836132c4565b6001600160401b038111156126b357634e487b7160e01b600052604160045260246000fd5b6040519080825280602002602001820160405280156126fe57816020015b60408051606081018252600080825260208083018290529282015282526000199092019101816126d15790505b50925060206040600061271184846132e4565b875161271d9190613303565b6127289060016132ac565b905060005b6127386002876132c4565b811015612823578784015183890151838a01516127568760406132ac565b96506127638660406132ac565b95506127708560016132ac565b9450808a858151811061279357634e487b7160e01b600052603260045260246000fd5b60200260200101516000019060ff16908160ff1681525050828a85815181106127cc57634e487b7160e01b600052603260045260246000fd5b60200260200101516020018181525050818a85815181106127fd57634e487b7160e01b600052603260045260246000fd5b60200260200101516040018181525050505050808061281b90613346565b91505061272d565b505050505050919050565b600080600061283f8787878761290f565b9150915061284c816129fc565b5095945050505050565b60606128658484600085612bff565b90505b9392505050565b6001600160a01b03808316600090815260036020908152604080832080546001600160f81b031916905592841682526005905220546128b090600190613303565b6001600160a01b03828116600081815260056020908152604091829020949094558051918252918516928101929092527f5e6a1637b22d9199de09f9b75a08b3407df323b23979c4b8e3421c066934ae79910160405180910390a15050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561294657506000905060036129f3565b8460ff16601b1415801561295e57508460ff16601c14155b1561296f57506000905060046129f3565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156129c3573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166129ec576000600192509250506129f3565b9150600090505b94509492505050565b6000816004811115612a1e57634e487b7160e01b600052602160045260246000fd5b1415612a2957610fa3565b6001816004811115612a4b57634e487b7160e01b600052602160045260246000fd5b1415612a995760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e61747572650000000000000000604482015260640161066c565b6002816004811115612abb57634e487b7160e01b600052602160045260246000fd5b1415612b095760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e67746800604482015260640161066c565b6003816004811115612b2b57634e487b7160e01b600052602160045260246000fd5b1415612b845760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b606482015260840161066c565b6004816004811115612ba657634e487b7160e01b600052602160045260246000fd5b1415610fa35760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b606482015260840161066c565b606082471015612c605760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b606482015260840161066c565b843b612cae5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161066c565b600080866001600160a01b03168587604051612cca9190613146565b60006040518083038185875af1925050503d8060008114612d07576040519150601f19603f3d011682016040523d82523d6000602084013e612d0c565b606091505b5091509150612d1c828286612d27565b979650505050505050565b60608315612d36575081612868565b825115612d465782518084602001fd5b8160405162461bcd60e51b815260040161066c919061318f565b80356001600160a01b0381168114611b5557600080fd5b600082601f830112612d87578081fd5b81356001600160401b0380821115612da157612da1613377565b604051601f8301601f19908116603f01168101908282118183101715612dc957612dc9613377565b81604052838152866020858801011115612de1578485fd5b8360208701602083013792830160200193909352509392505050565b803561ffff81168114611b5557600080fd5b80356001600160401b0381168114611b5557600080fd5b600060208284031215612e37578081fd5b61286882612d60565b600080600080600060a08688031215612e57578081fd5b612e6086612d60565b9450612e6e60208701612d60565b935060408601359250612e8360608701612e0f565b915060808601356001600160401b03811115612e9d578182fd5b612ea988828901612d77565b9150509295509295909350565b60008060008060008060c08789031215612ece578081fd5b612ed787612d60565b9550612ee560208801612d60565b94506040870135935060608701359250612f0160808801612e0f565b915060a08701356001600160401b03811115612f1b578182fd5b612f2789828a01612d77565b9150509295509295509295565b60008060008060808587031215612f49578384fd5b612f5285612d60565b935060208501359250612f6760408601612e0f565b915060608501356001600160401b03811115612f81578182fd5b612f8d87828801612d77565b91505092959194509250565b600080600080600060a08688031215612fb0578081fd5b612fb986612d60565b9450612e6e60208701612dfd565b600080600080600060a08688031215612fde578081fd5b612fe786612d60565b94506020860135935060408601359250612e8360608701612e0f565b60008060008060008060a0878903121561301b578182fd5b61302487612d60565b955061303260208801612e0f565b945061304060408801612dfd565b9350606087013560ff81168114613055578283fd5b925060808701356001600160401b0380821115613070578384fd5b818901915089601f830112613083578384fd5b813581811115613091578485fd5b8a602080830285010111156130a4578485fd5b6020830194508093505050509295509295509295565b6000602082840312156130cb578081fd5b81518015158114612868578182fd5b6000602082840312156130eb578081fd5b5035919050565b600080600060608486031215613106578081fd5b8335925061311660208501612e0f565b915060408401356001600160401b03811115613130578182fd5b61313c86828701612d77565b9150509250925092565b6000825161315881846020870161331a565b9190910192915050565b9384526001600160a01b0392909216602084015260408301526001600160401b0316606082015260800190565b60006020825282518060208401526131ae81604085016020870161331a565b601f01601f19169190910160400192915050565b6020808252601290820152711354d0ce881cd85b1d081c995c5d5a5c995960721b604082015260600190565b60208082526017908201527f43523a207369676e61747572652074696d6564206f7574000000000000000000604082015260600190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60208082526012908201527121a91d1032bc3834b93c903a37b7903330b960711b604082015260600190565b600061ffff8083168185168083038211156132a3576132a3613361565b01949350505050565b600082198211156132bf576132bf613361565b500190565b6000826132df57634e487b7160e01b81526012600452602481fd5b500490565b60008160001904831182151516156132fe576132fe613361565b500290565b60008282101561331557613315613361565b500390565b60005b8381101561333557818101518382015260200161331d565b83811115610b825750506000910152565b600060001982141561335a5761335a613361565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fdfea2646970667358221220bef24cce74a81eed9c8a70118232a0498d87e7e0cbc7ae37c5db09df5e8eaa1164736f6c63430008020033
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment