diff --git a/contracts/validator/validator.go b/contracts/validator/validator.go index 2145c68d42..9339ae13d5 100644 --- a/contracts/validator/validator.go +++ b/contracts/validator/validator.go @@ -34,7 +34,7 @@ func DeployValidator(transactOpts *bind.TransactOpts, contractBackend bind.Contr // 150 masternodes // Candidate Delay Withdraw 30 days = 1296000 blocks // Voter Delay Withdraw 2 days = 8640 blocks - validatorAddr, _, _, err := contract.DeployXDCValidator(transactOpts, contractBackend, validatorAddress, caps, ownerAddress, minDeposit, big.NewInt(150), big.NewInt(1296000), big.NewInt(8640)) if err != nil { + validatorAddr, _, _, err := contract.DeployXDCValidator(transactOpts, contractBackend, validatorAddress, caps, ownerAddress, minDeposit, minVoterCap, big.NewInt(150), big.NewInt(1296000), big.NewIn t(8640)) if err != nil { return validatorAddr, nil, err } diff --git a/contracts/validator/validator_test.go b/contracts/validator/validator_test.go index 73598101a7..27efd904d8 100644 --- a/contracts/validator/validator_test.go +++ b/contracts/validator/validator_test.go @@ -86,6 +86,7 @@ func TestRewardBalance(t *testing.T) { []*big.Int{validatorCap}, addr, big.NewInt(50000), + big.NewInt(1), big.NewInt(99), big.NewInt(100), big.NewInt(100), diff --git a/genesis/devnet.json b/genesis/devnet.json index 669667aa2b..a0259d0a59 100644 --- a/genesis/devnet.json +++ b/genesis/devnet.json @@ -28,14 +28,15 @@ "balance": "0x0000000000000000000000000000000000000000052B7D2DCC80CD2E4000000" }, "0000000000000000000000000000000000000088": { - "code": "0x6060604052600436106101065763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166301267951811461010b57806302aa9be21461012157806306a49fce1461014357806315febd68146101a95780632d15cc04146101d15780632f9c4bba146101f0578063302b6872146102035780633477ee2e14610228578063441a3e701461025a57806358e7525f146102735780636dd7d8ea14610292578063a9a981a3146102a6578063a9ff959e146102b9578063ae6e43f5146102cc578063b642facd146102eb578063d09f1ab41461030a578063d161c7671461031d578063d51b9e9314610330578063d55b7dff14610363575b600080fd5b61011f600160a060020a0360043516610376565b005b341561012c57600080fd5b61011f600160a060020a03600435166024356105b9565b341561014e57600080fd5b6101566107ec565b60405160208082528190810183818151815260200191508051906020019060200280838360005b8381101561019557808201518382015260200161017d565b505050509050019250505060405180910390f35b34156101b457600080fd5b6101bf600435610855565b60405190815260200160405180910390f35b34156101dc57600080fd5b610156600160a060020a0360043516610879565b34156101fb57600080fd5b610156610906565b341561020e57600080fd5b6101bf600160a060020a0360043581169060243516610988565b341561023357600080fd5b61023e6004356109b7565b604051600160a060020a03909116815260200160405180910390f35b341561026557600080fd5b61011f6004356024356109df565b341561027e57600080fd5b6101bf600160a060020a0360043516610b46565b61011f600160a060020a0360043516610b65565b34156102b157600080fd5b6101bf610d13565b34156102c457600080fd5b6101bf610d19565b34156102d757600080fd5b61011f600160a060020a0360043516610d1f565b34156102f657600080fd5b61023e600160a060020a0360043516610fb6565b341561031557600080fd5b6101bf610fd4565b341561032857600080fd5b6101bf610fda565b341561033b57600080fd5b61034f600160a060020a0360043516610fe0565b604051901515815260200160405180910390f35b341561036e57600080fd5b6101bf611005565b60055460009034101561038857600080fd5b600160a060020a038216600090815260016020526040902054829060a060020a900460ff16156103b757600080fd5b600160a060020a038316600090815260016020819052604090912001546103e4903463ffffffff61100b16565b9150600380548060010182816103fa9190611033565b506000918252602090912001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03851617905560606040519081016040908152600160a060020a0333811683526001602080850182905283850187905291871660009081529152208151815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03919091161781556020820151815490151560a060020a0274ff0000000000000000000000000000000000000000199091161781556040820151600191820155600160a060020a03808616600090815260208381526040808320339094168352600290930190522034905560045461050292509063ffffffff61100b16565b600455600160a060020a038316600090815260026020526040902080546001810161052d8382611033565b506000918252602090912001805473ffffffffffffffffffffffffffffffffffffffff191633600160a060020a038116919091179091557f7635f1d87b47fba9f2b09e56eb4be75cca030e0cb179c1602ac9261d39a8f5c1908434604051600160a060020a039384168152919092166020820152604080820192909252606001905180910390a1505050565b600160a060020a038083166000908152600160209081526040808320339094168352600290930190529081205483908390819010156105f757600080fd5b600160a060020a038281166000908152600160205260409020543382169116141561066557600554600160a060020a03808416600090815260016020908152604080832033909416835260029093019052205461065a908363ffffffff61102116565b101561066557600080fd5b600160a060020a03851660009081526001602081905260409091200154610692908563ffffffff61102116565b600160a060020a0380871660009081526001602081815260408084209283019590955533909316825260020190915220546106d3908563ffffffff61102116565b600160a060020a038087166000908152600160209081526040808320339094168352600290930190522055600854610711904363ffffffff61100b16565b600160a060020a033316600090815260208181526040808320848452909152902054909350610746908563ffffffff61100b16565b600160a060020a03331660008181526020818152604080832088845280835290832094909455918152905260019081018054909181016107868382611033565b5060009182526020909120018390557faa0e554f781c3c3b2be110a0557f260f11af9a8aa2c64bc1e7a31dbb21e32fa2338686604051600160a060020a039384168152919092166020820152604080820192909252606001905180910390a15050505050565b6107f461105c565b600380548060200260200160405190810160405280929190818152602001828054801561084a57602002820191906000526020600020905b8154600160a060020a0316815260019091019060200180831161082c575b505050505090505b90565b33600160a060020a0316600090815260208181526040808320938352929052205490565b61088161105c565b6002600083600160a060020a0316600160a060020a031681526020019081526020016000208054806020026020016040519081016040528092919081815260200182805480156108fa57602002820191906000526020600020905b8154600160a060020a031681526001909101906020018083116108dc575b50505050509050919050565b61090e61105c565b60008033600160a060020a0316600160a060020a0316815260200190815260200160002060010180548060200260200160405190810160405280929190818152602001828054801561084a57602002820191906000526020600020905b81548152602001906001019080831161096b575050505050905090565b600160a060020a0391821660009081526001602090815260408083209390941682526002909201909152205490565b60038054829081106109c557fe5b600091825260209091200154600160a060020a0316905081565b600082828282116109ef57600080fd5b43829010156109fd57600080fd5b600160a060020a03331660009081526020818152604080832085845290915281205411610a2957600080fd5b600160a060020a0333166000908152602081905260409020600101805483919083908110610a5357fe5b60009182526020909120015414610a6957600080fd5b600160a060020a03331660008181526020818152604080832089845280835290832080549084905593835291905260010180549194509085908110610aaa57fe5b6000918252602082200155600160a060020a03331683156108fc0284604051600060405180830381858888f193505050501515610ae657600080fd5b7ff279e6a1f5e320cca91135676d9cb6e44ca8a08c0b88342bcdb1144f6511b5683386856040518084600160a060020a0316600160a060020a03168152602001838152602001828152602001935050505060405180910390a15050505050565b600160a060020a03166000908152600160208190526040909120015490565b600160a060020a038116600090815260016020526040902054819060a060020a900460ff161515610b9557600080fd5b600160a060020a03821660009081526001602081905260409091200154610bc2903463ffffffff61100b16565b600160a060020a0380841660009081526001602081815260408084209283019590955533909316825260020190915220541515610c5457600160a060020a0382166000908152600260205260409020805460018101610c218382611033565b506000918252602090912001805473ffffffffffffffffffffffffffffffffffffffff191633600160a060020a03161790555b600160a060020a038083166000908152600160209081526040808320339094168352600290930190522054610c8f903463ffffffff61100b16565b600160a060020a03808416600090815260016020908152604080832033948516845260020190915290819020929092557f66a9138482c99e9baf08860110ef332cc0c23b4a199a53593d8db0fc8f96fbfc918490349051600160a060020a039384168152919092166020820152604080820192909252606001905180910390a15050565b60045481565b60085481565b600160a060020a038181166000908152600160205260408120549091829182918591338216911614610d5057600080fd5b600160a060020a038516600090815260016020526040902054859060a060020a900460ff161515610d8057600080fd5b600160a060020a0386166000908152600160208190526040909120805474ff000000000000000000000000000000000000000019169055600454610dc99163ffffffff61102116565b600455600094505b600354851015610e535785600160a060020a0316600386815481101515610df457fe5b600091825260209091200154600160a060020a03161415610e48576003805486908110610e1d57fe5b6000918252602090912001805473ffffffffffffffffffffffffffffffffffffffff19169055610e53565b600190940193610dd1565b600160a060020a03808716600081815260016020818152604080842033909616845260028601825283205493909252908190529190910154909450610e9e908563ffffffff61102116565b600160a060020a0380881660009081526001602081815260408084209283019590955533909316825260020190915290812055600754610ee4904363ffffffff61100b16565b600160a060020a033316600090815260208181526040808320848452909152902054909350610f19908563ffffffff61100b16565b600160a060020a0333166000818152602081815260408083208884528083529083209490945591815290526001908101805490918101610f598382611033565b5060009182526020909120018390557f4edf3e325d0063213a39f9085522994a1c44bea5f39e7d63ef61260a1e58c6d33387604051600160a060020a039283168152911660208201526040908101905180910390a1505050505050565b600160a060020a039081166000908152600160205260409020541690565b60065481565b60075481565b600160a060020a031660009081526001602052604090205460a060020a900460ff1690565b60055481565b60008282018381101561101a57fe5b9392505050565b60008282111561102d57fe5b50900390565b8154818355818115116110575760008381526020902061105791810190830161106e565b505050565b60206040519081016040526000815290565b61085291905b808211156110885760008155600101611074565b50905600a165627a7a723058204533b4b8a991f576e2d55f6584dab0ed29699096e40b36f2058199d3728f7ab70029", + "code": "0x6060604052600436106101115763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166301267951811461011657806302aa9be21461012c57806306a49fce1461014e57806315febd68146101b45780632d15cc04146101dc5780632f9c4bba146101fb578063302b68721461020e5780633477ee2e14610233578063441a3e701461026557806358e7525f1461027e5780636dd7d8ea1461029d578063a9a981a3146102b1578063a9ff959e146102c4578063ae6e43f5146102d7578063b642facd146102f6578063d09f1ab414610315578063d161c76714610328578063d51b9e931461033b578063d55b7dff1461036e578063f8ac9dd514610381575b600080fd5b61012a600160a060020a0360043516610394565b005b341561013757600080fd5b61012a600160a060020a03600435166024356105d7565b341561015957600080fd5b61016161080a565b60405160208082528190810183818151815260200191508051906020019060200280838360005b838110156101a0578082015183820152602001610188565b505050509050019250505060405180910390f35b34156101bf57600080fd5b6101ca600435610873565b60405190815260200160405180910390f35b34156101e757600080fd5b610161600160a060020a0360043516610897565b341561020657600080fd5b610161610924565b341561021957600080fd5b6101ca600160a060020a03600435811690602435166109a6565b341561023e57600080fd5b6102496004356109d5565b604051600160a060020a03909116815260200160405180910390f35b341561027057600080fd5b61012a6004356024356109fd565b341561028957600080fd5b6101ca600160a060020a0360043516610b64565b61012a600160a060020a0360043516610b83565b34156102bc57600080fd5b6101ca610d40565b34156102cf57600080fd5b6101ca610d46565b34156102e257600080fd5b61012a600160a060020a0360043516610d4c565b341561030157600080fd5b610249600160a060020a0360043516610fe3565b341561032057600080fd5b6101ca611001565b341561033357600080fd5b6101ca611007565b341561034657600080fd5b61035a600160a060020a036004351661100d565b604051901515815260200160405180910390f35b341561037957600080fd5b6101ca611032565b341561038c57600080fd5b6101ca611038565b6005546000903410156103a657600080fd5b600160a060020a038216600090815260016020526040902054829060a060020a900460ff16156103d557600080fd5b600160a060020a03831660009081526001602081905260409091200154610402903463ffffffff61103e16565b9150600380548060010182816104189190611066565b506000918252602090912001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03851617905560606040519081016040908152600160a060020a0333811683526001602080850182905283850187905291871660009081529152208151815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03919091161781556020820151815490151560a060020a0274ff0000000000000000000000000000000000000000199091161781556040820151600191820155600160a060020a03808616600090815260208381526040808320339094168352600290930190522034905560045461052092509063ffffffff61103e16565b600455600160a060020a038316600090815260026020526040902080546001810161054b8382611066565b506000918252602090912001805473ffffffffffffffffffffffffffffffffffffffff191633600160a060020a038116919091179091557f7635f1d87b47fba9f2b09e56eb4be75cca030e0cb179c1602ac9261d39a8f5c1908434604051600160a060020a039384168152919092166020820152604080820192909252606001905180910390a1505050565b600160a060020a0380831660009081526001602090815260408083203390941683526002909301905290812054839083908190101561061557600080fd5b600160a060020a038281166000908152600160205260409020543382169116141561068357600554600160a060020a038084166000908152600160209081526040808320339094168352600290930190522054610678908363ffffffff61105416565b101561068357600080fd5b600160a060020a038516600090815260016020819052604090912001546106b0908563ffffffff61105416565b600160a060020a0380871660009081526001602081815260408084209283019590955533909316825260020190915220546106f1908563ffffffff61105416565b600160a060020a03808716600090815260016020908152604080832033909416835260029093019052205560095461072f904363ffffffff61103e16565b600160a060020a033316600090815260208181526040808320848452909152902054909350610764908563ffffffff61103e16565b600160a060020a03331660008181526020818152604080832088845280835290832094909455918152905260019081018054909181016107a48382611066565b5060009182526020909120018390557faa0e554f781c3c3b2be110a0557f260f11af9a8aa2c64bc1e7a31dbb21e32fa2338686604051600160a060020a039384168152919092166020820152604080820192909252606001905180910390a15050505050565b61081261108f565b600380548060200260200160405190810160405280929190818152602001828054801561086857602002820191906000526020600020905b8154600160a060020a0316815260019091019060200180831161084a575b505050505090505b90565b33600160a060020a0316600090815260208181526040808320938352929052205490565b61089f61108f565b6002600083600160a060020a0316600160a060020a0316815260200190815260200160002080548060200260200160405190810160405280929190818152602001828054801561091857602002820191906000526020600020905b8154600160a060020a031681526001909101906020018083116108fa575b50505050509050919050565b61092c61108f565b60008033600160a060020a0316600160a060020a0316815260200190815260200160002060010180548060200260200160405190810160405280929190818152602001828054801561086857602002820191906000526020600020905b815481526020019060010190808311610989575050505050905090565b600160a060020a0391821660009081526001602090815260408083209390941682526002909201909152205490565b60038054829081106109e357fe5b600091825260209091200154600160a060020a0316905081565b60008282828211610a0d57600080fd5b4382901015610a1b57600080fd5b600160a060020a03331660009081526020818152604080832085845290915281205411610a4757600080fd5b600160a060020a0333166000908152602081905260409020600101805483919083908110610a7157fe5b60009182526020909120015414610a8757600080fd5b600160a060020a03331660008181526020818152604080832089845280835290832080549084905593835291905260010180549194509085908110610ac857fe5b6000918252602082200155600160a060020a03331683156108fc0284604051600060405180830381858888f193505050501515610b0457600080fd5b7ff279e6a1f5e320cca91135676d9cb6e44ca8a08c0b88342bcdb1144f6511b5683386856040518084600160a060020a0316600160a060020a03168152602001838152602001828152602001935050505060405180910390a15050505050565b600160a060020a03166000908152600160208190526040909120015490565b600654341015610b9257600080fd5b600160a060020a038116600090815260016020526040902054819060a060020a900460ff161515610bc257600080fd5b600160a060020a03821660009081526001602081905260409091200154610bef903463ffffffff61103e16565b600160a060020a0380841660009081526001602081815260408084209283019590955533909316825260020190915220541515610c8157600160a060020a0382166000908152600260205260409020805460018101610c4e8382611066565b506000918252602090912001805473ffffffffffffffffffffffffffffffffffffffff191633600160a060020a03161790555b600160a060020a038083166000908152600160209081526040808320339094168352600290930190522054610cbc903463ffffffff61103e16565b600160a060020a03808416600090815260016020908152604080832033948516845260020190915290819020929092557f66a9138482c99e9baf08860110ef332cc0c23b4a199a53593d8db0fc8f96fbfc918490349051600160a060020a039384168152919092166020820152604080820192909252606001905180910390a15050565b60045481565b60095481565b600160a060020a038181166000908152600160205260408120549091829182918591338216911614610d7d57600080fd5b600160a060020a038516600090815260016020526040902054859060a060020a900460ff161515610dad57600080fd5b600160a060020a0386166000908152600160208190526040909120805474ff000000000000000000000000000000000000000019169055600454610df69163ffffffff61105416565b600455600094505b600354851015610e805785600160a060020a0316600386815481101515610e2157fe5b600091825260209091200154600160a060020a03161415610e75576003805486908110610e4a57fe5b6000918252602090912001805473ffffffffffffffffffffffffffffffffffffffff19169055610e80565b600190940193610dfe565b600160a060020a03808716600081815260016020818152604080842033909616845260028601825283205493909252908190529190910154909450610ecb908563ffffffff61105416565b600160a060020a0380881660009081526001602081815260408084209283019590955533909316825260020190915290812055600854610f11904363ffffffff61103e16565b600160a060020a033316600090815260208181526040808320848452909152902054909350610f46908563ffffffff61103e16565b600160a060020a0333166000818152602081815260408083208884528083529083209490945591815290526001908101805490918101610f868382611066565b5060009182526020909120018390557f4edf3e325d0063213a39f9085522994a1c44bea5f39e7d63ef61260a1e58c6d33387604051600160a060020a039283168152911660208201526040908101905180910390a1505050505050565b600160a060020a039081166000908152600160205260409020541690565b60075481565b60085481565b600160a060020a031660009081526001602052604090205460a060020a900460ff1690565b60055481565b60065481565b60008282018381101561104d57fe5b9392505050565b60008282111561106057fe5b50900390565b81548183558181151161108a5760008381526020902061108a9181019083016110a1565b505050565b60206040519081016040526000815290565b61087091905b808211156110bb57600081556001016110a7565b50905600a165627a7a7230582006ba34ba8a7d4cae8607d3da715fc79d484fd7cb6dd98b06d820244296874eba0029", "storage": { "0x0000000000000000000000000000000000000000000000000000000000000003": "0x0000000000000000000000000000000000000000000000000000000000000003", "0x0000000000000000000000000000000000000000000000000000000000000004": "0x0000000000000000000000000000000000000000000000000000000000000003", "0x0000000000000000000000000000000000000000000000000000000000000005": "0x000000000000000000000000000000000000000000000a968163f0a57b400000", - "0x0000000000000000000000000000000000000000000000000000000000000006": "0x0000000000000000000000000000000000000000000000000000000000000096", - "0x0000000000000000000000000000000000000000000000000000000000000007": "0x000000000000000000000000000000000000000000000000000000000013c680", - "0x0000000000000000000000000000000000000000000000000000000000000008": "0x00000000000000000000000000000000000000000000000000000000000021c0", + "0x0000000000000000000000000000000000000000000000000000000000000006": "0x0000000000000000000000000000000000000000000000008ac7230489e80000", + "0x0000000000000000000000000000000000000000000000000000000000000007": "0x0000000000000000000000000000000000000000000000000000000000000096", + "0x0000000000000000000000000000000000000000000000000000000000000008": "0x000000000000000000000000000000000000000000000000000000000013c680", + "0x0000000000000000000000000000000000000000000000000000000000000009": "0x00000000000000000000000000000000000000000000000000000000000021c0", "0x026993bba202119b8a8475bf9f364d83622f52af5ac4adbfb65ae8a937a51888": "0x000000000000000000009501487d62d33467c4842c5e54eb370837e4e88bba0f", "0x026993bba202119b8a8475bf9f364d83622f52af5ac4adbfb65ae8a937a51889": "0x000000000000000000000000000000000000000000000a968163f0a57b400000", "0x02c8f9fcf8c8e9c24ab57213a541d13709892b4c2c4e76fa4801ab0b47a3de93": "0x0000000000000000000000000000000000000000000000000000000000000001", diff --git a/genesis/testnet.json b/genesis/testnet.json index 669667aa2b..a0259d0a59 100644 --- a/genesis/testnet.json +++ b/genesis/testnet.json @@ -28,14 +28,15 @@ "balance": "0x0000000000000000000000000000000000000000052B7D2DCC80CD2E4000000" }, "0000000000000000000000000000000000000088": { - "code": "0x6060604052600436106101065763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166301267951811461010b57806302aa9be21461012157806306a49fce1461014357806315febd68146101a95780632d15cc04146101d15780632f9c4bba146101f0578063302b6872146102035780633477ee2e14610228578063441a3e701461025a57806358e7525f146102735780636dd7d8ea14610292578063a9a981a3146102a6578063a9ff959e146102b9578063ae6e43f5146102cc578063b642facd146102eb578063d09f1ab41461030a578063d161c7671461031d578063d51b9e9314610330578063d55b7dff14610363575b600080fd5b61011f600160a060020a0360043516610376565b005b341561012c57600080fd5b61011f600160a060020a03600435166024356105b9565b341561014e57600080fd5b6101566107ec565b60405160208082528190810183818151815260200191508051906020019060200280838360005b8381101561019557808201518382015260200161017d565b505050509050019250505060405180910390f35b34156101b457600080fd5b6101bf600435610855565b60405190815260200160405180910390f35b34156101dc57600080fd5b610156600160a060020a0360043516610879565b34156101fb57600080fd5b610156610906565b341561020e57600080fd5b6101bf600160a060020a0360043581169060243516610988565b341561023357600080fd5b61023e6004356109b7565b604051600160a060020a03909116815260200160405180910390f35b341561026557600080fd5b61011f6004356024356109df565b341561027e57600080fd5b6101bf600160a060020a0360043516610b46565b61011f600160a060020a0360043516610b65565b34156102b157600080fd5b6101bf610d13565b34156102c457600080fd5b6101bf610d19565b34156102d757600080fd5b61011f600160a060020a0360043516610d1f565b34156102f657600080fd5b61023e600160a060020a0360043516610fb6565b341561031557600080fd5b6101bf610fd4565b341561032857600080fd5b6101bf610fda565b341561033b57600080fd5b61034f600160a060020a0360043516610fe0565b604051901515815260200160405180910390f35b341561036e57600080fd5b6101bf611005565b60055460009034101561038857600080fd5b600160a060020a038216600090815260016020526040902054829060a060020a900460ff16156103b757600080fd5b600160a060020a038316600090815260016020819052604090912001546103e4903463ffffffff61100b16565b9150600380548060010182816103fa9190611033565b506000918252602090912001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03851617905560606040519081016040908152600160a060020a0333811683526001602080850182905283850187905291871660009081529152208151815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03919091161781556020820151815490151560a060020a0274ff0000000000000000000000000000000000000000199091161781556040820151600191820155600160a060020a03808616600090815260208381526040808320339094168352600290930190522034905560045461050292509063ffffffff61100b16565b600455600160a060020a038316600090815260026020526040902080546001810161052d8382611033565b506000918252602090912001805473ffffffffffffffffffffffffffffffffffffffff191633600160a060020a038116919091179091557f7635f1d87b47fba9f2b09e56eb4be75cca030e0cb179c1602ac9261d39a8f5c1908434604051600160a060020a039384168152919092166020820152604080820192909252606001905180910390a1505050565b600160a060020a038083166000908152600160209081526040808320339094168352600290930190529081205483908390819010156105f757600080fd5b600160a060020a038281166000908152600160205260409020543382169116141561066557600554600160a060020a03808416600090815260016020908152604080832033909416835260029093019052205461065a908363ffffffff61102116565b101561066557600080fd5b600160a060020a03851660009081526001602081905260409091200154610692908563ffffffff61102116565b600160a060020a0380871660009081526001602081815260408084209283019590955533909316825260020190915220546106d3908563ffffffff61102116565b600160a060020a038087166000908152600160209081526040808320339094168352600290930190522055600854610711904363ffffffff61100b16565b600160a060020a033316600090815260208181526040808320848452909152902054909350610746908563ffffffff61100b16565b600160a060020a03331660008181526020818152604080832088845280835290832094909455918152905260019081018054909181016107868382611033565b5060009182526020909120018390557faa0e554f781c3c3b2be110a0557f260f11af9a8aa2c64bc1e7a31dbb21e32fa2338686604051600160a060020a039384168152919092166020820152604080820192909252606001905180910390a15050505050565b6107f461105c565b600380548060200260200160405190810160405280929190818152602001828054801561084a57602002820191906000526020600020905b8154600160a060020a0316815260019091019060200180831161082c575b505050505090505b90565b33600160a060020a0316600090815260208181526040808320938352929052205490565b61088161105c565b6002600083600160a060020a0316600160a060020a031681526020019081526020016000208054806020026020016040519081016040528092919081815260200182805480156108fa57602002820191906000526020600020905b8154600160a060020a031681526001909101906020018083116108dc575b50505050509050919050565b61090e61105c565b60008033600160a060020a0316600160a060020a0316815260200190815260200160002060010180548060200260200160405190810160405280929190818152602001828054801561084a57602002820191906000526020600020905b81548152602001906001019080831161096b575050505050905090565b600160a060020a0391821660009081526001602090815260408083209390941682526002909201909152205490565b60038054829081106109c557fe5b600091825260209091200154600160a060020a0316905081565b600082828282116109ef57600080fd5b43829010156109fd57600080fd5b600160a060020a03331660009081526020818152604080832085845290915281205411610a2957600080fd5b600160a060020a0333166000908152602081905260409020600101805483919083908110610a5357fe5b60009182526020909120015414610a6957600080fd5b600160a060020a03331660008181526020818152604080832089845280835290832080549084905593835291905260010180549194509085908110610aaa57fe5b6000918252602082200155600160a060020a03331683156108fc0284604051600060405180830381858888f193505050501515610ae657600080fd5b7ff279e6a1f5e320cca91135676d9cb6e44ca8a08c0b88342bcdb1144f6511b5683386856040518084600160a060020a0316600160a060020a03168152602001838152602001828152602001935050505060405180910390a15050505050565b600160a060020a03166000908152600160208190526040909120015490565b600160a060020a038116600090815260016020526040902054819060a060020a900460ff161515610b9557600080fd5b600160a060020a03821660009081526001602081905260409091200154610bc2903463ffffffff61100b16565b600160a060020a0380841660009081526001602081815260408084209283019590955533909316825260020190915220541515610c5457600160a060020a0382166000908152600260205260409020805460018101610c218382611033565b506000918252602090912001805473ffffffffffffffffffffffffffffffffffffffff191633600160a060020a03161790555b600160a060020a038083166000908152600160209081526040808320339094168352600290930190522054610c8f903463ffffffff61100b16565b600160a060020a03808416600090815260016020908152604080832033948516845260020190915290819020929092557f66a9138482c99e9baf08860110ef332cc0c23b4a199a53593d8db0fc8f96fbfc918490349051600160a060020a039384168152919092166020820152604080820192909252606001905180910390a15050565b60045481565b60085481565b600160a060020a038181166000908152600160205260408120549091829182918591338216911614610d5057600080fd5b600160a060020a038516600090815260016020526040902054859060a060020a900460ff161515610d8057600080fd5b600160a060020a0386166000908152600160208190526040909120805474ff000000000000000000000000000000000000000019169055600454610dc99163ffffffff61102116565b600455600094505b600354851015610e535785600160a060020a0316600386815481101515610df457fe5b600091825260209091200154600160a060020a03161415610e48576003805486908110610e1d57fe5b6000918252602090912001805473ffffffffffffffffffffffffffffffffffffffff19169055610e53565b600190940193610dd1565b600160a060020a03808716600081815260016020818152604080842033909616845260028601825283205493909252908190529190910154909450610e9e908563ffffffff61102116565b600160a060020a0380881660009081526001602081815260408084209283019590955533909316825260020190915290812055600754610ee4904363ffffffff61100b16565b600160a060020a033316600090815260208181526040808320848452909152902054909350610f19908563ffffffff61100b16565b600160a060020a0333166000818152602081815260408083208884528083529083209490945591815290526001908101805490918101610f598382611033565b5060009182526020909120018390557f4edf3e325d0063213a39f9085522994a1c44bea5f39e7d63ef61260a1e58c6d33387604051600160a060020a039283168152911660208201526040908101905180910390a1505050505050565b600160a060020a039081166000908152600160205260409020541690565b60065481565b60075481565b600160a060020a031660009081526001602052604090205460a060020a900460ff1690565b60055481565b60008282018381101561101a57fe5b9392505050565b60008282111561102d57fe5b50900390565b8154818355818115116110575760008381526020902061105791810190830161106e565b505050565b60206040519081016040526000815290565b61085291905b808211156110885760008155600101611074565b50905600a165627a7a723058204533b4b8a991f576e2d55f6584dab0ed29699096e40b36f2058199d3728f7ab70029", + "code": "0x6060604052600436106101115763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166301267951811461011657806302aa9be21461012c57806306a49fce1461014e57806315febd68146101b45780632d15cc04146101dc5780632f9c4bba146101fb578063302b68721461020e5780633477ee2e14610233578063441a3e701461026557806358e7525f1461027e5780636dd7d8ea1461029d578063a9a981a3146102b1578063a9ff959e146102c4578063ae6e43f5146102d7578063b642facd146102f6578063d09f1ab414610315578063d161c76714610328578063d51b9e931461033b578063d55b7dff1461036e578063f8ac9dd514610381575b600080fd5b61012a600160a060020a0360043516610394565b005b341561013757600080fd5b61012a600160a060020a03600435166024356105d7565b341561015957600080fd5b61016161080a565b60405160208082528190810183818151815260200191508051906020019060200280838360005b838110156101a0578082015183820152602001610188565b505050509050019250505060405180910390f35b34156101bf57600080fd5b6101ca600435610873565b60405190815260200160405180910390f35b34156101e757600080fd5b610161600160a060020a0360043516610897565b341561020657600080fd5b610161610924565b341561021957600080fd5b6101ca600160a060020a03600435811690602435166109a6565b341561023e57600080fd5b6102496004356109d5565b604051600160a060020a03909116815260200160405180910390f35b341561027057600080fd5b61012a6004356024356109fd565b341561028957600080fd5b6101ca600160a060020a0360043516610b64565b61012a600160a060020a0360043516610b83565b34156102bc57600080fd5b6101ca610d40565b34156102cf57600080fd5b6101ca610d46565b34156102e257600080fd5b61012a600160a060020a0360043516610d4c565b341561030157600080fd5b610249600160a060020a0360043516610fe3565b341561032057600080fd5b6101ca611001565b341561033357600080fd5b6101ca611007565b341561034657600080fd5b61035a600160a060020a036004351661100d565b604051901515815260200160405180910390f35b341561037957600080fd5b6101ca611032565b341561038c57600080fd5b6101ca611038565b6005546000903410156103a657600080fd5b600160a060020a038216600090815260016020526040902054829060a060020a900460ff16156103d557600080fd5b600160a060020a03831660009081526001602081905260409091200154610402903463ffffffff61103e16565b9150600380548060010182816104189190611066565b506000918252602090912001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03851617905560606040519081016040908152600160a060020a0333811683526001602080850182905283850187905291871660009081529152208151815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03919091161781556020820151815490151560a060020a0274ff0000000000000000000000000000000000000000199091161781556040820151600191820155600160a060020a03808616600090815260208381526040808320339094168352600290930190522034905560045461052092509063ffffffff61103e16565b600455600160a060020a038316600090815260026020526040902080546001810161054b8382611066565b506000918252602090912001805473ffffffffffffffffffffffffffffffffffffffff191633600160a060020a038116919091179091557f7635f1d87b47fba9f2b09e56eb4be75cca030e0cb179c1602ac9261d39a8f5c1908434604051600160a060020a039384168152919092166020820152604080820192909252606001905180910390a1505050565b600160a060020a0380831660009081526001602090815260408083203390941683526002909301905290812054839083908190101561061557600080fd5b600160a060020a038281166000908152600160205260409020543382169116141561068357600554600160a060020a038084166000908152600160209081526040808320339094168352600290930190522054610678908363ffffffff61105416565b101561068357600080fd5b600160a060020a038516600090815260016020819052604090912001546106b0908563ffffffff61105416565b600160a060020a0380871660009081526001602081815260408084209283019590955533909316825260020190915220546106f1908563ffffffff61105416565b600160a060020a03808716600090815260016020908152604080832033909416835260029093019052205560095461072f904363ffffffff61103e16565b600160a060020a033316600090815260208181526040808320848452909152902054909350610764908563ffffffff61103e16565b600160a060020a03331660008181526020818152604080832088845280835290832094909455918152905260019081018054909181016107a48382611066565b5060009182526020909120018390557faa0e554f781c3c3b2be110a0557f260f11af9a8aa2c64bc1e7a31dbb21e32fa2338686604051600160a060020a039384168152919092166020820152604080820192909252606001905180910390a15050505050565b61081261108f565b600380548060200260200160405190810160405280929190818152602001828054801561086857602002820191906000526020600020905b8154600160a060020a0316815260019091019060200180831161084a575b505050505090505b90565b33600160a060020a0316600090815260208181526040808320938352929052205490565b61089f61108f565b6002600083600160a060020a0316600160a060020a0316815260200190815260200160002080548060200260200160405190810160405280929190818152602001828054801561091857602002820191906000526020600020905b8154600160a060020a031681526001909101906020018083116108fa575b50505050509050919050565b61092c61108f565b60008033600160a060020a0316600160a060020a0316815260200190815260200160002060010180548060200260200160405190810160405280929190818152602001828054801561086857602002820191906000526020600020905b815481526020019060010190808311610989575050505050905090565b600160a060020a0391821660009081526001602090815260408083209390941682526002909201909152205490565b60038054829081106109e357fe5b600091825260209091200154600160a060020a0316905081565b60008282828211610a0d57600080fd5b4382901015610a1b57600080fd5b600160a060020a03331660009081526020818152604080832085845290915281205411610a4757600080fd5b600160a060020a0333166000908152602081905260409020600101805483919083908110610a7157fe5b60009182526020909120015414610a8757600080fd5b600160a060020a03331660008181526020818152604080832089845280835290832080549084905593835291905260010180549194509085908110610ac857fe5b6000918252602082200155600160a060020a03331683156108fc0284604051600060405180830381858888f193505050501515610b0457600080fd5b7ff279e6a1f5e320cca91135676d9cb6e44ca8a08c0b88342bcdb1144f6511b5683386856040518084600160a060020a0316600160a060020a03168152602001838152602001828152602001935050505060405180910390a15050505050565b600160a060020a03166000908152600160208190526040909120015490565b600654341015610b9257600080fd5b600160a060020a038116600090815260016020526040902054819060a060020a900460ff161515610bc257600080fd5b600160a060020a03821660009081526001602081905260409091200154610bef903463ffffffff61103e16565b600160a060020a0380841660009081526001602081815260408084209283019590955533909316825260020190915220541515610c8157600160a060020a0382166000908152600260205260409020805460018101610c4e8382611066565b506000918252602090912001805473ffffffffffffffffffffffffffffffffffffffff191633600160a060020a03161790555b600160a060020a038083166000908152600160209081526040808320339094168352600290930190522054610cbc903463ffffffff61103e16565b600160a060020a03808416600090815260016020908152604080832033948516845260020190915290819020929092557f66a9138482c99e9baf08860110ef332cc0c23b4a199a53593d8db0fc8f96fbfc918490349051600160a060020a039384168152919092166020820152604080820192909252606001905180910390a15050565b60045481565b60095481565b600160a060020a038181166000908152600160205260408120549091829182918591338216911614610d7d57600080fd5b600160a060020a038516600090815260016020526040902054859060a060020a900460ff161515610dad57600080fd5b600160a060020a0386166000908152600160208190526040909120805474ff000000000000000000000000000000000000000019169055600454610df69163ffffffff61105416565b600455600094505b600354851015610e805785600160a060020a0316600386815481101515610e2157fe5b600091825260209091200154600160a060020a03161415610e75576003805486908110610e4a57fe5b6000918252602090912001805473ffffffffffffffffffffffffffffffffffffffff19169055610e80565b600190940193610dfe565b600160a060020a03808716600081815260016020818152604080842033909616845260028601825283205493909252908190529190910154909450610ecb908563ffffffff61105416565b600160a060020a0380881660009081526001602081815260408084209283019590955533909316825260020190915290812055600854610f11904363ffffffff61103e16565b600160a060020a033316600090815260208181526040808320848452909152902054909350610f46908563ffffffff61103e16565b600160a060020a0333166000818152602081815260408083208884528083529083209490945591815290526001908101805490918101610f868382611066565b5060009182526020909120018390557f4edf3e325d0063213a39f9085522994a1c44bea5f39e7d63ef61260a1e58c6d33387604051600160a060020a039283168152911660208201526040908101905180910390a1505050505050565b600160a060020a039081166000908152600160205260409020541690565b60075481565b60085481565b600160a060020a031660009081526001602052604090205460a060020a900460ff1690565b60055481565b60065481565b60008282018381101561104d57fe5b9392505050565b60008282111561106057fe5b50900390565b81548183558181151161108a5760008381526020902061108a9181019083016110a1565b505050565b60206040519081016040526000815290565b61087091905b808211156110bb57600081556001016110a7565b50905600a165627a7a7230582006ba34ba8a7d4cae8607d3da715fc79d484fd7cb6dd98b06d820244296874eba0029", "storage": { "0x0000000000000000000000000000000000000000000000000000000000000003": "0x0000000000000000000000000000000000000000000000000000000000000003", "0x0000000000000000000000000000000000000000000000000000000000000004": "0x0000000000000000000000000000000000000000000000000000000000000003", "0x0000000000000000000000000000000000000000000000000000000000000005": "0x000000000000000000000000000000000000000000000a968163f0a57b400000", - "0x0000000000000000000000000000000000000000000000000000000000000006": "0x0000000000000000000000000000000000000000000000000000000000000096", - "0x0000000000000000000000000000000000000000000000000000000000000007": "0x000000000000000000000000000000000000000000000000000000000013c680", - "0x0000000000000000000000000000000000000000000000000000000000000008": "0x00000000000000000000000000000000000000000000000000000000000021c0", + "0x0000000000000000000000000000000000000000000000000000000000000006": "0x0000000000000000000000000000000000000000000000008ac7230489e80000", + "0x0000000000000000000000000000000000000000000000000000000000000007": "0x0000000000000000000000000000000000000000000000000000000000000096", + "0x0000000000000000000000000000000000000000000000000000000000000008": "0x000000000000000000000000000000000000000000000000000000000013c680", + "0x0000000000000000000000000000000000000000000000000000000000000009": "0x00000000000000000000000000000000000000000000000000000000000021c0", "0x026993bba202119b8a8475bf9f364d83622f52af5ac4adbfb65ae8a937a51888": "0x000000000000000000009501487d62d33467c4842c5e54eb370837e4e88bba0f", "0x026993bba202119b8a8475bf9f364d83622f52af5ac4adbfb65ae8a937a51889": "0x000000000000000000000000000000000000000000000a968163f0a57b400000", "0x02c8f9fcf8c8e9c24ab57213a541d13709892b4c2c4e76fa4801ab0b47a3de93": "0x0000000000000000000000000000000000000000000000000000000000000001",