diff --git a/python/okota/data/RegistryAddressDeclarator.bin b/python/okota/data/RegistryAddressDeclarator.bin index 12f03ad..3ff11dd 100644 --- a/python/okota/data/RegistryAddressDeclarator.bin +++ b/python/okota/data/RegistryAddressDeclarator.bin @@ -1 +1 @@ -60806040523480156200001157600080fd5b5060405162001b2638038062001b26833981810160405281019062000037919062000206565b336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060005b8151811015620000e05760028282815181106200009c576200009b620003bf565b5b602002602001015190806001815401808255809150506001900390600052602060002001600090919091909150558080620000d79062000342565b9150506200007a565b5081600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505062000476565b6000620001416200013b8462000295565b6200026c565b9050808382526020820190508285602086028201111562000167576200016662000422565b5b60005b858110156200019b5781620001808882620001ef565b8452602084019350602083019250506001810190506200016a565b5050509392505050565b600081519050620001b68162000442565b92915050565b600082601f830112620001d457620001d36200041d565b5b8151620001e68482602086016200012a565b91505092915050565b60008151905062000200816200045c565b92915050565b6000806040838503121562000220576200021f6200042c565b5b60006200023085828601620001a5565b925050602083015167ffffffffffffffff81111562000254576200025362000427565b5b6200026285828601620001bc565b9150509250929050565b6000620002786200028b565b90506200028682826200030c565b919050565b6000604051905090565b600067ffffffffffffffff821115620002b357620002b2620003ee565b5b602082029050602081019050919050565b6000620002d182620002e2565b9050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b620003178262000431565b810181811067ffffffffffffffff82111715620003395762000338620003ee565b5b80604052505050565b60006200034f8262000302565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141562000385576200038462000390565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b6200044d81620002c4565b81146200045957600080fd5b50565b6200046781620002d8565b81146200047357600080fd5b50565b6116a080620004866000396000f3fe608060405234801561001057600080fd5b50600436106100b0576000357c0100000000000000000000000000000000000000000000000000000000900480639648eca2116100835780639648eca214610163578063bb34534c14610193578063efb70c68146101c3578063f0f86f71146101e1578063f2fde38b14610211576100b0565b806301ffc9a7146100b557806328f2d4da146100e55780635deed44e146101155780638da5cb5b14610145575b600080fd5b6100cf60048036038101906100ca9190611281565b610241565b6040516100dc91906113b7565b60405180910390f35b6100ff60048036038101906100fa91906112ae565b610346565b60405161010c91906113d2565b60405180910390f35b61012f600480360381019061012a91906111c0565b61036a565b60405161013c91906113d2565b60405180910390f35b61014d610387565b60405161015a9190611373565b60405180910390f35b61017d600480360381019061017891906111c0565b6103ab565b60405161018a91906113d2565b60405180910390f35b6101ad60048036038101906101a891906111c0565b6103c8565b6040516101ba9190611373565b60405180910390f35b6101cb610405565b6040516101d89190611373565b60405180910390f35b6101fb60048036038101906101f6919061121a565b61042b565b60405161020891906113b7565b60405180910390f35b61022b60048036038101906102269190611193565b611086565b60405161023891906113b7565b60405180910390f35b600063bb34534c7c010000000000000000000000000000000000000000000000000000000002827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614156102965760019050610341565b6301ffc9a77c010000000000000000000000000000000000000000000000000000000002827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614156102e95760019050610341565b639493f8b27c010000000000000000000000000000000000000000000000000000000002827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916141561033c5760019050610341565b600090505b919050565b6002818154811061035657600080fd5b906000526020600020016000915090505481565b600060056000838152602001908152602001600020549050919050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600060046000838152602001908152602001600020549050919050565b60006003600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461048657600080fd5b600073ffffffffffffffffffffffffffffffffffffffff166003600087815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146104f257600080fd5b60006060600080606060005b6002805490508160ff16101561054f578a60028260ff168154811061052657610525611582565b5b9060005260206000200154141561053c57600193505b808061054790611529565b9150506104fe565b8361058f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610586906113ed565b60405180910390fd5b602067ffffffffffffffff8111156105aa576105a96115b1565b5b6040519080825280601f01601f1916602001820160405280156105dc5781602001600182028036833780820191505090505b509150600090505b60208160ff161015610681578a8160ff166020811061060657610605611582565b5b1a7f010000000000000000000000000000000000000000000000000000000000000002828260ff168151811061063f5761063e611582565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350808061067990611529565b9150506105e4565b600282604051610691919061135c565b602060405180830381855afa1580156106ae573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906106d191906111ed565b9250600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168a8460405160240161071f92919061138e565b6040516020818303038152906040527fae47ece0000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516107a9919061135c565b6000604051808303816000865af19150503d80600081146107e6576040519150601f19603f3d011682016040523d82523d6000602084013e6107eb565b606091505b508096508197505050856107fe57600080fd5b60017f01000000000000000000000000000000000000000000000000000000000000000285601f8151811061083657610835611582565b5b60200101517f010000000000000000000000000000000000000000000000000000000000000090047f0100000000000000000000000000000000000000000000000000000000000000027effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916146108ac57600080fd5b604067ffffffffffffffff8111156108c7576108c66115b1565b5b6040519080825280601f01601f1916602001820160405280156108f95781602001600182028036833780820191505090505b509150600090505b60208160ff16101561099e57828160ff166020811061092357610922611582565b5b1a7f010000000000000000000000000000000000000000000000000000000000000002828260ff168151811061095c5761095b611582565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350808061099690611529565b915050610901565b600090505b60208160ff161015610a4c57888160ff16602081106109c5576109c4611582565b5b1a7f010000000000000000000000000000000000000000000000000000000000000002826020836109f69190611434565b60ff1681518110610a0a57610a09611582565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053508080610a4490611529565b9150506109a3565b600282604051610a5c919061135c565b602060405180830381855afa158015610a79573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190610a9c91906111ed565b9250600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168a84604051602401610aea92919061138e565b6040516020818303038152906040527fae47ece0000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050604051610b74919061135c565b6000604051808303816000865af19150503d8060008114610bb1576040519150601f19603f3d011682016040523d82523d6000602084013e610bb6565b606091505b50809650819750505085610bc957600080fd5b60017f01000000000000000000000000000000000000000000000000000000000000000285601f81518110610c0157610c00611582565b5b60200101517f010000000000000000000000000000000000000000000000000000000000000090047f0100000000000000000000000000000000000000000000000000000000000000027effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614610c7757600080fd5b600090505b60208160ff161015610d1957828160ff1660208110610c9e57610c9d611582565b5b1a7f010000000000000000000000000000000000000000000000000000000000000002828260ff1681518110610cd757610cd6611582565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053508080610d1190611529565b915050610c7c565b600090505b60208160ff161015610dc757878160ff1660208110610d4057610d3f611582565b5b1a7f01000000000000000000000000000000000000000000000000000000000000000282602083610d719190611434565b60ff1681518110610d8557610d84611582565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053508080610dbf90611529565b915050610d1e565b600282604051610dd7919061135c565b602060405180830381855afa158015610df4573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190610e1791906111ed565b9250600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168a84604051602401610e6592919061138e565b6040516020818303038152906040527fae47ece0000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050604051610eef919061135c565b6000604051808303816000865af19150503d8060008114610f2c576040519150601f19603f3d011682016040523d82523d6000602084013e610f31565b606091505b50809650819750505085610f4457600080fd5b60017f01000000000000000000000000000000000000000000000000000000000000000285601f81518110610f7c57610f7b611582565b5b60200101517f010000000000000000000000000000000000000000000000000000000000000090047f0100000000000000000000000000000000000000000000000000000000000000027effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614610ff257600080fd5b89600360008d815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555088600460008d81526020019081526020016000208190555087600560008b81526020019081526020016000208190555060019650505050505050949350505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146110e157600080fd5b816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060019050919050565b6000813590506111398161160e565b92915050565b60008135905061114e81611625565b92915050565b60008151905061116381611625565b92915050565b6000813590506111788161163c565b92915050565b60008135905061118d81611653565b92915050565b6000602082840312156111a9576111a86115e0565b5b60006111b78482850161112a565b91505092915050565b6000602082840312156111d6576111d56115e0565b5b60006111e48482850161113f565b91505092915050565b600060208284031215611203576112026115e0565b5b600061121184828501611154565b91505092915050565b60008060008060808587031215611234576112336115e0565b5b60006112428782880161113f565b94505060206112538782880161112a565b93505060406112648782880161113f565b92505060606112758782880161113f565b91505092959194509250565b600060208284031215611297576112966115e0565b5b60006112a584828501611169565b91505092915050565b6000602082840312156112c4576112c36115e0565b5b60006112d28482850161117e565b91505092915050565b6112e48161146b565b82525050565b6112f38161147d565b82525050565b61130281611489565b82525050565b60006113138261140d565b61131d8185611418565b935061132d8185602086016114f6565b80840191505092915050565b6000611346600e83611423565b9150611351826115e5565b602082019050919050565b60006113688284611308565b915081905092915050565b600060208201905061138860008301846112db565b92915050565b60006040820190506113a360008301856112db565b6113b060208301846112f9565b9392505050565b60006020820190506113cc60008301846112ea565b92915050565b60006020820190506113e760008301846112f9565b92915050565b6000602082019050818103600083015261140681611339565b9050919050565b600081519050919050565b600081905092915050565b600082825260208201905092915050565b600061143f826114e9565b915061144a836114e9565b92508260ff038211156114605761145f611553565b5b828201905092915050565b6000611476826114bf565b9050919050565b60008115159050919050565b6000819050919050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b838110156115145780820151818401526020810190506114f9565b83811115611523576000848401525b50505050565b6000611534826114e9565b915060ff82141561154857611547611553565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b7f4552525f4944454e544946494552000000000000000000000000000000000000600082015250565b6116178161146b565b811461162257600080fd5b50565b61162e81611489565b811461163957600080fd5b50565b61164581611493565b811461165057600080fd5b50565b61165c816114df565b811461166757600080fd5b5056fea26469706673582212207e391e35823118b245f7d05f7b568e232851f385975fa1af77f8d21c56dcd40564736f6c63430008070033 \ No newline at end of file +60806040523480156200001157600080fd5b506040516200135038038062001350833981810160405281019062000037919062000206565b336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060005b8151811015620000e05760028282815181106200009c576200009b620003bf565b5b602002602001015190806001815401808255809150506001900390600052602060002001600090919091909150558080620000d79062000342565b9150506200007a565b5081600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505062000476565b6000620001416200013b8462000295565b6200026c565b9050808382526020820190508285602086028201111562000167576200016662000422565b5b60005b858110156200019b5781620001808882620001ef565b8452602084019350602083019250506001810190506200016a565b5050509392505050565b600081519050620001b68162000442565b92915050565b600082601f830112620001d457620001d36200041d565b5b8151620001e68482602086016200012a565b91505092915050565b60008151905062000200816200045c565b92915050565b6000806040838503121562000220576200021f6200042c565b5b60006200023085828601620001a5565b925050602083015167ffffffffffffffff81111562000254576200025362000427565b5b6200026285828601620001bc565b9150509250929050565b6000620002786200028b565b90506200028682826200030c565b919050565b6000604051905090565b600067ffffffffffffffff821115620002b357620002b2620003ee565b5b602082029050602081019050919050565b6000620002d182620002e2565b9050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b620003178262000431565b810181811067ffffffffffffffff82111715620003395762000338620003ee565b5b80604052505050565b60006200034f8262000302565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141562000385576200038462000390565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b6200044d81620002c4565b81146200045957600080fd5b50565b6200046781620002d8565b81146200047357600080fd5b50565b610eca80620004866000396000f3fe608060405234801561001057600080fd5b50600436106100b0576000357c0100000000000000000000000000000000000000000000000000000000900480639648eca2116100835780639648eca214610163578063ba44593c14610193578063bb34534c146101c3578063efb70c68146101f3578063f2fde38b14610211576100b0565b806301ffc9a7146100b557806328f2d4da146100e55780635deed44e146101155780638da5cb5b14610145575b600080fd5b6100cf60048036038101906100ca9190610ae2565b610241565b6040516100dc9190610c18565b60405180910390f35b6100ff60048036038101906100fa9190610b0f565b610346565b60405161010c9190610c33565b60405180910390f35b61012f600480360381019061012a9190610a48565b61036a565b60405161013c9190610c33565b60405180910390f35b61014d610387565b60405161015a9190610bd4565b60405180910390f35b61017d60048036038101906101789190610a48565b6103ab565b60405161018a9190610c33565b60405180910390f35b6101ad60048036038101906101a89190610aa2565b6103c8565b6040516101ba9190610c18565b60405180910390f35b6101dd60048036038101906101d89190610a48565b6108ab565b6040516101ea9190610bd4565b60405180910390f35b6101fb6108e8565b6040516102089190610bd4565b60405180910390f35b61022b60048036038101906102269190610a1b565b61090e565b6040516102389190610c18565b60405180910390f35b600063bb34534c7c010000000000000000000000000000000000000000000000000000000002827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614156102965760019050610341565b6301ffc9a77c010000000000000000000000000000000000000000000000000000000002827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614156102e95760019050610341565b639493f8b27c010000000000000000000000000000000000000000000000000000000002827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916141561033c5760019050610341565b600090505b919050565b6002818154811061035657600080fd5b906000526020600020016000915090505481565b600060056000838152602001908152602001600020549050919050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600060046000838152602001908152602001600020549050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461042357600080fd5b600073ffffffffffffffffffffffffffffffffffffffff166003600085815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461048f57600080fd5b60006060600080606060005b6002805490508160ff1610156104ec578860028260ff16815481106104c3576104c2610dac565b5b906000526020600020015414156104d957600193505b80806104e490610d53565b91505061049b565b8361052c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161052390610c4e565b60405180910390fd5b602067ffffffffffffffff81111561054757610546610ddb565b5b6040519080825280601f01601f1916602001820160405280156105795781602001600182028036833780820191505090505b509150600090505b60208160ff16101561061e57888160ff16602081106105a3576105a2610dac565b5b1a7f010000000000000000000000000000000000000000000000000000000000000002828260ff16815181106105dc576105db610dac565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350808061061690610d53565b915050610581565b60028260405161062e9190610bbd565b602060405180830381855afa15801561064b573d6000803e3d6000fd5b5050506040513d601f19601f8201168201806040525081019061066e9190610a75565b9250600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1688846040516024016106bc929190610bef565b6040516020818303038152906040527fae47ece0000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516107469190610bbd565b6000604051808303816000865af19150503d8060008114610783576040519150601f19603f3d011682016040523d82523d6000602084013e610788565b606091505b5080965081975050508561079b57600080fd5b60017f01000000000000000000000000000000000000000000000000000000000000000285601f815181106107d3576107d2610dac565b5b60200101517f010000000000000000000000000000000000000000000000000000000000000090047f0100000000000000000000000000000000000000000000000000000000000000027effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161461084957600080fd5b87600360008b815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001965050505050505092915050565b60006003600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461096957600080fd5b816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060019050919050565b6000813590506109c181610e38565b92915050565b6000813590506109d681610e4f565b92915050565b6000815190506109eb81610e4f565b92915050565b600081359050610a0081610e66565b92915050565b600081359050610a1581610e7d565b92915050565b600060208284031215610a3157610a30610e0a565b5b6000610a3f848285016109b2565b91505092915050565b600060208284031215610a5e57610a5d610e0a565b5b6000610a6c848285016109c7565b91505092915050565b600060208284031215610a8b57610a8a610e0a565b5b6000610a99848285016109dc565b91505092915050565b60008060408385031215610ab957610ab8610e0a565b5b6000610ac7858286016109c7565b9250506020610ad8858286016109b2565b9150509250929050565b600060208284031215610af857610af7610e0a565b5b6000610b06848285016109f1565b91505092915050565b600060208284031215610b2557610b24610e0a565b5b6000610b3384828501610a06565b91505092915050565b610b4581610c95565b82525050565b610b5481610ca7565b82525050565b610b6381610cb3565b82525050565b6000610b7482610c6e565b610b7e8185610c79565b9350610b8e818560208601610d20565b80840191505092915050565b6000610ba7600e83610c84565b9150610bb282610e0f565b602082019050919050565b6000610bc98284610b69565b915081905092915050565b6000602082019050610be96000830184610b3c565b92915050565b6000604082019050610c046000830185610b3c565b610c116020830184610b5a565b9392505050565b6000602082019050610c2d6000830184610b4b565b92915050565b6000602082019050610c486000830184610b5a565b92915050565b60006020820190508181036000830152610c6781610b9a565b9050919050565b600081519050919050565b600081905092915050565b600082825260208201905092915050565b6000610ca082610ce9565b9050919050565b60008115159050919050565b6000819050919050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b83811015610d3e578082015181840152602081019050610d23565b83811115610d4d576000848401525b50505050565b6000610d5e82610d13565b915060ff821415610d7257610d71610d7d565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b7f4552525f4944454e544946494552000000000000000000000000000000000000600082015250565b610e4181610c95565b8114610e4c57600080fd5b50565b610e5881610cb3565b8114610e6357600080fd5b50565b610e6f81610cbd565b8114610e7a57600080fd5b50565b610e8681610d09565b8114610e9157600080fd5b5056fea264697066735822122016f54cb8e57c4aacf60010460dc448a90ebeba9908edfc95099578434fa3f68d64736f6c63430008070033 \ No newline at end of file diff --git a/python/requirements.txt b/python/requirements.txt index b9c0228..b2420d5 100644 --- a/python/requirements.txt +++ b/python/requirements.txt @@ -1,9 +1,9 @@ -confini~=0.5.1 +confini~=0.5.2 funga-eth~=0.5.1 -chainlib-eth~=0.0.10 +chainlib-eth~=0.0.12 eth_erc20~=0.1.2 eth-address-index~=0.2.4 eth-accounts-index~=0.1.2 eth-token-index~=0.2.4 -eth-contract-registry~=0.6.3 +eth-contract-registry~=0.7.1a2 cic-contracts~=0.0.5 diff --git a/python/tests/test_registry.py b/python/tests/test_registry.py index f832271..f68f07c 100644 --- a/python/tests/test_registry.py +++ b/python/tests/test_registry.py @@ -49,7 +49,7 @@ class TestContractRegistry(TestAddressDeclaratorBase): bogus_hash_two = bytearray(32) bogus_hash_two[0] = 0x01 bogus_hash_two_hex = add_0x(bogus_hash_two.hex()) - (tx_hash_hex, o) = c.set(self.registry_address, self.accounts[0], 'FOO', self.registry_address, str(self.chain_spec), bogus_hash_two_hex) + (tx_hash_hex, o) = c.set(self.registry_address, self.accounts[0], 'FOO', self.registry_address) r = self.rpc.do(o) o = receipt(r) rcpt = self.rpc.do(o) @@ -75,18 +75,18 @@ class TestContractRegistry(TestAddressDeclaratorBase): h = hashlib.sha256() h.update(str(self.chain_spec).encode('utf-8')) chain_description_hash = h.digest() - - h = hashlib.sha256() - h.update(z) - h.update(chain_description_hash) - z = h.digest() - self.assertEqual(z.hex(), proofs[1]) - - h = hashlib.sha256() - h.update(z) - h.update(bogus_hash_two) - z = h.digest() - self.assertEqual(z.hex(), proofs[2]) +# +# h = hashlib.sha256() +# h.update(z) +# h.update(chain_description_hash) +# z = h.digest() +# self.assertEqual(z.hex(), proofs[1]) +# +# h = hashlib.sha256() +# h.update(z) +# h.update(bogus_hash_two) +# z = h.digest() +# self.assertEqual(z.hex(), proofs[2]) diff --git a/solidity/RegistryAddressDeclarator.sol b/solidity/RegistryAddressDeclarator.sol index 23bdcf1..8a556f3 100644 --- a/solidity/RegistryAddressDeclarator.sol +++ b/solidity/RegistryAddressDeclarator.sol @@ -24,7 +24,7 @@ contract ContractRegistryAddressDeclarator { addressDeclarator = _addressDeclarator; } - function set(bytes32 _identifier, address _address, bytes32 _chainDescriptor, bytes32 _chainConfig) public returns (bool) { + function set(bytes32 _identifier, address _address) public returns (bool) { //, bytes32 _chainDescriptor, bytes32 _chainConfig) public returns (bool) { require(msg.sender == owner); require(entries[_identifier] == address(0)); @@ -51,38 +51,72 @@ contract ContractRegistryAddressDeclarator { require(ok); require(r[31] == 0x01); - buf = new bytes(64); - for (i = 0; i < 32; i++) { - buf[i] = identifierHash[i]; - } - for (i = 0; i < 32; i++) { - buf[i+32] = _chainDescriptor[i]; - } - - identifierHash = sha256(buf); - (ok, r) = addressDeclarator.call(abi.encodeWithSignature("addDeclaration(address,bytes32)", _address, identifierHash)); - require(ok); - require(r[31] == 0x01); - - - for (i = 0; i < 32; i++) { - buf[i] = identifierHash[i]; - } - for (i = 0; i < 32; i++) { - buf[i+32] = _chainConfig[i]; - } - identifierHash = sha256(buf); - (ok, r) = addressDeclarator.call(abi.encodeWithSignature("addDeclaration(address,bytes32)", _address, identifierHash)); - require(ok); - require(r[31] == 0x01); - entries[_identifier] = _address; - chainIdentifiers[_identifier] = _chainDescriptor; - chainConfigs[_chainDescriptor] = _chainConfig; + ///chainIdentifiers[_identifier] = _chainDescriptor; + //chainConfigs[_chainDescriptor] = _chainConfig; return true; } +// function set(bytes32 _identifier, address _address, bytes32 _chainDescriptor, bytes32 _chainConfig) public returns (bool) { +// require(msg.sender == owner); +// require(entries[_identifier] == address(0)); +// +// bool ok; +// bytes memory r; +// bool found = false; +// bytes32 identifierHash; +// bytes memory buf; +// uint8 i; +// +// for (i = 0; i < identifiers.length; i++) { +// if (identifiers[i] == _identifier) { +// found = true; +// } +// } +// require(found, 'ERR_IDENTIFIER'); +// +// buf = new bytes(32); +// for (i = 0; i < 32; i++) { +// buf[i] = _identifier[i]; +// } +// identifierHash = sha256(buf); +// (ok, r) = addressDeclarator.call(abi.encodeWithSignature("addDeclaration(address,bytes32)", _address, identifierHash)); +// require(ok); +// require(r[31] == 0x01); +// +// buf = new bytes(64); +// for (i = 0; i < 32; i++) { +// buf[i] = identifierHash[i]; +// } +// for (i = 0; i < 32; i++) { +// buf[i+32] = _chainDescriptor[i]; +// } +// +// identifierHash = sha256(buf); +// (ok, r) = addressDeclarator.call(abi.encodeWithSignature("addDeclaration(address,bytes32)", _address, identifierHash)); +// require(ok); +// require(r[31] == 0x01); +// +// +// for (i = 0; i < 32; i++) { +// buf[i] = identifierHash[i]; +// } +// for (i = 0; i < 32; i++) { +// buf[i+32] = _chainConfig[i]; +// } +// identifierHash = sha256(buf); +// (ok, r) = addressDeclarator.call(abi.encodeWithSignature("addDeclaration(address,bytes32)", _address, identifierHash)); +// require(ok); +// require(r[31] == 0x01); +// +// entries[_identifier] = _address; +// chainIdentifiers[_identifier] = _chainDescriptor; +// chainConfigs[_chainDescriptor] = _chainConfig; +// +// return true; +// } +// // Implements EIP 173 function transferOwnership(address _newOwner) public returns (bool) { require(msg.sender == owner);