Contract details

Contract name

Creator

at txn

Balance

Transactions

Gas used

0

Last balance update

2302405

Transactions

Token transfers

Tokens

Internal txns

Coin balance history

Contract

Contract name

StakingManager

EVM Version

Paris

Optimization runs

200

Contract file path

contracts/StakingManager.sol

Compiler version

Optimization enabled

Verified at

Invalid Date

StakingManager.sol

Loading...
Compiler Settings
undefined
Contract ABI
undefined
Contract creation code
"0x60a0604052306080523480156200001557600080fd5b506200002062000026565b620000e7565b600054610100900460ff1615620000935760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811614620000e5576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b6080516132486200011f600039600081816109210152818161096101528181610cdb01528181610d1b0152610daa01526132486000f3fe6080604052600436106102555760003560e01c80637dc0d1d011610139578063b6b55f25116100b6578063f0f442601161007a578063f0f44260146106eb578063f2fde38b1461070b578063f55905621461072b578063f70f48a91461074b578063f7fb07b01461076b578063fee151ae1461078157600080fd5b8063b6b55f2514610663578063d0f37f4c14610676578063d46b64061461068b578063e65896c9146106ab578063ea5cbe07146106cb57600080fd5b80638da5cb5b116100fd5780638da5cb5b1461058d578063912119af146105ab578063987b7605146105c15780639aad5c9a146105e1578063a87430ba1461060157600080fd5b80637dc0d1d0146105045780637e7fc8eb146105255780638456cb591461054557806385a373171461055a57806386b9d81f1461057a57600080fd5b80634c89867f116101d257806361d027b31161019657806361d027b31461045157806367779fe2146104725780636e8c78fd1461049a578063715018a6146104ba57806371faedef146104cf5780637adbf973146104e457600080fd5b80634c89867f146103be5780634f1ef286146103e457806352059756146103f757806352d1902d146104185780635c975abb1461042d57600080fd5b80633d1b3d69116102195780633d1b3d691461030e5780633f4ba83a1461033c5780634046ebae14610351578063456dc17a1461038a5780634b3fd148146103ab57600080fd5b806301c76f8114610261578063179680fe146102835780632e1a7d4d146102bb5780633659cfe6146102db578063371fd8e6146102fb57600080fd5b3661025c57005b600080fd5b34801561026d57600080fd5b5061028161027c366004612c51565b610799565b005b34801561028f57600080fd5b5061012e546001600160401b03165b6040516001600160401b0390911681526020015b60405180910390f35b3480156102c757600080fd5b506102816102d6366004612c6e565b6107ec565b3480156102e757600080fd5b506102816102f6366004612c51565b610917565b610281610309366004612c6e565b6109f3565b34801561031a57600080fd5b5061032e610329366004612c51565b610b1a565b6040519081526020016102b2565b34801561034857600080fd5b50610281610b63565b34801561035d57600080fd5b5061013454610372906001600160a01b031681565b6040516001600160a01b0390911681526020016102b2565b34801561039657600080fd5b5061013154610372906001600160a01b031681565b6102816103b9366004612c87565b610b75565b3480156103ca57600080fd5b5061012e54600160401b90046001600160401b031661029e565b6102816103f2366004612ccd565b610cd1565b34801561040357600080fd5b5061013054610372906001600160a01b031681565b34801561042457600080fd5b5061032e610d9d565b34801561043957600080fd5b5060c95460ff165b60405190151581526020016102b2565b34801561045d57600080fd5b5061013354610372906001600160a01b031681565b34801561047e57600080fd5b5061037273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b3480156104a657600080fd5b5061012e54600160801b900460ff16610441565b3480156104c657600080fd5b50610281610e50565b3480156104db57600080fd5b50610281610e62565b3480156104f057600080fd5b506102816104ff366004612c51565b610efb565b34801561051057600080fd5b5061013254610372906001600160a01b031681565b34801561053157600080fd5b5061032e610540366004612d90565b610f59565b34801561055157600080fd5b506102816110d5565b34801561056657600080fd5b50610281610575366004612db9565b6110e5565b610281610588366004612dd2565b6112d0565b34801561059957600080fd5b506097546001600160a01b0316610372565b3480156105b757600080fd5b5061012d5461032e565b3480156105cd57600080fd5b5061032e6105dc366004612c51565b61146c565b3480156105ed57600080fd5b506102816105fc366004612c6e565b611527565b34801561060d57600080fd5b5061062161061c366004612c51565b611538565b6040516102b29190600060a082019050825182526020830151602083015260408301516040830152606083015160608301526080830151608083015292915050565b610281610671366004612c6e565b6115c3565b34801561068257600080fd5b5061032e611675565b34801561069757600080fd5b506102816106a6366004612e00565b611685565b3480156106b757600080fd5b5061032e6106c6366004612c51565b611738565b3480156106d757600080fd5b506102816106e6366004612c51565b6117a8565b3480156106f757600080fd5b50610281610706366004612c51565b6117cb565b34801561071757600080fd5b50610281610726366004612c51565b611822565b34801561073757600080fd5b50610441610746366004612c51565b611898565b34801561075757600080fd5b50610281610766366004612d90565b6118c2565b34801561077757600080fd5b5061012f5461032e565b34801561078d57600080fd5b506101355461032e9081565b6107a16118d3565b61013480546001600160a01b0319166001600160a01b0383169081179091556040517fe8c0056707ed008ae443ab5de430ae0701dacac38472cca13c9c1d02593ef88c90600090a250565b6107f461192d565b6107fc611973565b33610806816119cc565b6001600160a01b038116600090815261013660205260409020805461082c908490611aa2565b925061083783611aba565b61084082610b1a565b8311156108945760405162461bcd60e51b815260206004820152601d60248201527f4c6f616e506f6f6c3a204e6f7420656e6f7567682062616c616e63652e00000060448201526064015b60405180910390fd5b828160000160008282546108a89190612e28565b9091555050610130546108c5906001600160a01b03168385611b0a565b816001600160a01b03167f7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d58460405161090091815260200190565b60405180910390a25050610914600160fb55565b50565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361095f5760405162461bcd60e51b815260040161088b90612e3b565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166109a86000805160206131cc833981519152546001600160a01b031690565b6001600160a01b0316146109ce5760405162461bcd60e51b815260040161088b90612e87565b6109d781611b7f565b6040805160008082526020820190925261091491839190611b87565b6109fb61192d565b610a03611973565b33610a0d816119cc565b6001600160a01b0381166000908152610136602052604090206001810154610a358482611aa2565b9350610a4084611aba565b61013154610a58906001600160a01b03168486611cf2565b6000610a648583612e28565b6001840181905590506000819003610a89576000600384018190556002840155610ac9565b610a91611675565b610aa66a084595161401484a00000087612ed3565b610ab09190612f00565b836002016000828254610ac39190612e28565b90915550505b836001600160a01b03167f0516911bcc3a0a7412a44601057c0a0a1ec628bde049a84284bc42886653448886604051610b0491815260200190565b60405180910390a250505050610914600160fb55565b6001600160a01b0381166000908152610136602052604081205481610b3e84611dff565b9050808211610b51575060009392505050565b610b5b8183612e28565b949350505050565b610b6b6118d3565b610b73611ef4565b565b610b7d61192d565b610b85611973565b610b8e82611aba565b33610b98816119cc565b6001600160a01b038116600090815261013660205260409020610bba8261146c565b841115610c095760405162461bcd60e51b815260206004820152601f60248201527f4c6f616e506f6f6c3a20556e7361666520626f72726f7720616d6f756e742e00604482015260640161088b565b83816001016000828254610c1d9190612f14565b90915550610c2b9050611675565b610c406a084595161401484a00000086612ed3565b610c4a9190612f00565b816002016000828254610c5d9190612f14565b909155505061013154610c7a906001600160a01b03168486611b0a565b604080516001600160a01b038581168252602082018790528416917f3fc499aeb0bb1cb58b6de8b02b3f86f4e7394e9690bef0110e32ced8a563104591015b60405180910390a25050610ccd600160fb55565b5050565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003610d195760405162461bcd60e51b815260040161088b90612e3b565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610d626000805160206131cc833981519152546001600160a01b031690565b6001600160a01b031614610d885760405162461bcd60e51b815260040161088b90612e87565b610d9182611b7f565b610ccd82826001611b87565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610e3d5760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c60448201527f6c6564207468726f7567682064656c656761746563616c6c0000000000000000606482015260840161088b565b506000805160206131cc83398151915290565b610e586118d3565b610b736000611f46565b306001600160a01b031663d0f37f4c6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610ebc575060408051601f3d908101601f19168201909252610eb991810190612f27565b60015b610ed65761012e805460ff60801b1916600160801b179055565b610ede611f98565b81036109145761012e805460ff60801b1916600160801b17905550565b610f036118d3565b61013280546001600160a01b0319166001600160a01b0383169081179091556040519081527f3f32684a32a11dabdbb8c0177de80aa3ae36a004d75210335b49e544e48cd0aa906020015b60405180910390a150565b61012e54600090600160801b900460ff1615610f7d57610f77611f98565b92915050565b61012e546001600160401b03600160401b90910481169083168110610fa757505061012f54919050565b6000610fb38285612f40565b61012e549091506001600160401b03166000610fcf8284612f67565b90506000610fdd8385612f8d565b61012d5461012f54919250906001600160401b0384161561103357600061100d83866001600160401b0316611fbf565b90506a084595161401484a0000006110258284612ed3565b61102f9190612f00565b9150505b6001600160401b038316156110b65760006001600160401b038087169085166110676a084595161401484a00000086612e28565b6110719190612ed3565b61107b9190612f00565b611090906a084595161401484a000000612f14565b90506a084595161401484a0000006110a88284612ed3565b6110b29190612f00565b9150505b6110c86110c1611f98565b8290611aa2565b9998505050505050505050565b6110dd6118d3565b610b73612042565b600054610100900460ff16158080156111055750600054600160ff909116105b8061111f5750303b15801561111f575060005460ff166001145b6111825760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161088b565b6000805460ff1916600117905580156111a5576000805461ff0019166101001790555b6111ad61207f565b6111b56120a6565b6111bd6120d5565b6111c5612104565b6111e360c08301356111de610100850160e08601612d90565b612133565b6111ec82611685565b6111ff6104ff6080840160608501612c51565b61121261070660a0840160808501612c51565b61122561027c60c0840160a08501612c51565b6112356040830160208401612c51565b61013080546001600160a01b0319166001600160a01b03929092169190911790556112666060830160408401612c51565b61013180546001600160a01b0319166001600160a01b03929092169190911790558015610ccd576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b6112d861192d565b6112e0611973565b610134546001600160a01b0316331461133b5760405162461bcd60e51b815260206004820152601b60248201527f4c6f616e506f6f6c3a204e6f742061206c697175696461746f722e0000000000604482015260640161088b565b611344826119cc565b61134d82611898565b6113a55760405162461bcd60e51b815260206004820152602360248201527f4c6f616e506f6f6c3a20557365722063616e2774206265206c6971756964617460448201526232b21760e91b606482015260840161088b565b6001600160a01b0380831660009081526101366020526040902060018101546101315461013454929391926113df92918216911683611cf2565b6101305482546113fa916001600160a01b0316908590611b0a565b6001600160a01b038481166000818152610136602090815260408083208381556001810184905560028101849055600381018490556004019290925581519387168452830184905290917fde0aa27286f5cb3a4ed853dc4823ead62d63e92cdf13de09d6aece56970721a49101610cb9565b6000806b033b2e3c9fd0803ce80000006101356000015461148c85610b1a565b6114969190612ed3565b6114a09190612f00565b610132546101305460405163449e815d60e01b81526001600160a01b0391821660048201526024810184905292935060009291169063449e815d906044016040805180830381865afa1580156114fa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061151e9190612fb3565b50949350505050565b61152f6118d3565b610914816121a2565b61156a6040518060a0016040528060008152602001600081526020016000815260200160008152602001600081525090565b506001600160a01b031660009081526101366020908152604091829020825160a0810184528154815260018201549281019290925260028101549282019290925260038201546060820152600490910154608082015290565b6115cb61192d565b6115d3611973565b6115dc81611aba565b336115e6816119cc565b610130546115fe906001600160a01b03168284611cf2565b6001600160a01b0381166000908152610136602052604081208054849290611627908490612f14565b90915550506040518281526001600160a01b038216907f2da466a7b24304f47e87fa2e1e5a81b9831ce54fec19055ce277ca2f39ba42c49060200160405180910390a250610914600160fb55565b600061168042610f59565b905090565b61168d6118d3565b6b033b2e3c9fd0803ce8000000813511156116f65760405162461bcd60e51b815260206004820152602360248201527f4c6f616e506f6f6c3a20496e76616c696420636f6c6c61746572616c2072617460448201526234b79760e91b606482015260840161088b565b80610135611705828290359055565b5050604051813581527f8916c297dad8c35c95ebb9bdc996c37d30aa3e5cb778e7b54d9c06160a31872790602001610f4e565b6001600160a01b038116600090815261013660205260408120600381015482906a084595161401484a00000061176c611675565b846002015461177b9190612ed3565b6117859190612f00565b61178f9190612e28565b9050610b5b8260010154826121b390919063ffffffff16565b6117b061192d565b6117b8611973565b6117c1816119cc565b610914600160fb55565b6117d36118d3565b61013380546001600160a01b0319166001600160a01b0383169081179091556040519081527f3c864541ef71378c6229510ed90f376565ee42d9c5e0904a984a9e863e6db44f90602001610f4e565b61182a6118d3565b6001600160a01b03811661188f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161088b565b61091481611f46565b6001600160a01b038116600090815261013660205260408120546118bb83611dff565b1192915050565b6118ca6118d3565b610914816121c2565b6097546001600160a01b03163314610b735760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161088b565b60c95460ff1615610b735760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b604482015260640161088b565b600260fb54036119c55760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015260640161088b565b600260fb55565b6001600160a01b03811660009081526101366020526040812042600482015590806119f6846121d3565b9150915080600003611a085750505050565b81836003016000828254611a1c9190612f14565b9091555050825481908490600090611a35908490612e28565b90915550506101305461013354611a59916001600160a01b03908116911683611b0a565b836001600160a01b03167f075a2720282fdf622141dae0b048ef90a21a7e57c134c76912d19d006b3b3f6f82604051611a9491815260200190565b60405180910390a250505050565b6000818310611ab15781611ab3565b825b9392505050565b806000036109145760405162461bcd60e51b815260206004820152601960248201527f4c6f616e506f6f6c3a20496e76616c696420616d6f756e742e00000000000000604482015260640161088b565b611b1381611aba565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b03841601611b5057611b4b6001600160a01b0383168261229b565b505050565b6000611b5c82856123b4565b9050611b726001600160a01b03851684836123cb565b50505050565b600160fb55565b6109146118d3565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615611bba57611b4b8361242e565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015611c14575060408051601f3d908101601f19168201909252611c1191810190612f27565b60015b611c775760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b606482015260840161088b565b6000805160206131cc8339815191528114611ce65760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b606482015260840161088b565b50611b4b8383836124ca565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b03841601611d8e5780341015611d675760405162461bcd60e51b815260206004820181905260248201527f4c6f616e506f6f6c3a20496e76616c6964206e617469766520616d6f756e742e604482015260640161088b565b6000611d738234612e28565b90508015611b7257611b726001600160a01b0384168261229b565b3415611ddc5760405162461bcd60e51b815260206004820181905260248201527f4c6f616e506f6f6c3a20496e76616c6964206e617469766520616d6f756e742e604482015260640161088b565b6000611de882856123b4565b9050611b726001600160a01b0385168430846124ef565b6001600160a01b03811660009081526101366020526040812060010154808203611e2c5750600092915050565b610132546101315460405163449e815d60e01b81526001600160a01b03918216600482015260248101849052600092919091169063449e815d906044016040805180830381865afa158015611e85573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ea99190612fb3565b5090506000611eb7856121d3565b61013554909250829150611ed76b033b2e3c9fd0803ce800000085612ed3565b611ee19190612f00565b611eeb9190612f14565b95945050505050565b611efc612527565b60c9805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60006116806a084595161401484a0000006fffffffffffffffffffffffffffffffff612ed3565b60006001821615611fd05782611fdd565b6a084595161401484a0000005b90505b60019190911c908115610f77576a084595161401484a0000006120038480612ed3565b61200d9190612f00565b92508160011660010361203d576a084595161401484a0000006120308483612ed3565b61203a9190612f00565b90505b611fe0565b61204a61192d565b60c9805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258611f293390565b600054610100900460ff16610b735760405162461bcd60e51b815260040161088b90612fd8565b600054610100900460ff166120cd5760405162461bcd60e51b815260040161088b90612fd8565b610b73612570565b600054610100900460ff166120fc5760405162461bcd60e51b815260040161088b90612fd8565b610b736125a0565b600054610100900460ff1661212b5760405162461bcd60e51b815260040161088b90612fd8565b610b736125d3565b600054610100900460ff1661215a5760405162461bcd60e51b815260040161088b90612fd8565b6a084595161401484a00000061012f5561012e805467ffffffffffffffff60401b1916600160401b426001600160401b031602179055612199826125fa565b610ccd8161268b565b6121aa61272a565b610914816125fa565b6000818311611ab15781611ab3565b6121ca61272a565b6109148161268b565b6001600160a01b0381166000908152610136602052604081206001015481906121fb84611738565b6122059190612e28565b91508160000361221a57506000928392509050565b610132546101315460405163449e815d60e01b81526001600160a01b0391821660048201526024810185905291169063449e815d906044016040805180830381865afa15801561226e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122929190612fb3565b50919391925050565b804710156122eb5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e6365000000604482015260640161088b565b6000826001600160a01b03168260405160006040518083038185875af1925050503d8060008114612338576040519150601f19603f3d011682016040523d82523d6000602084013e61233d565b606091505b5050905080611b4b5760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d61792068617665207265766572746564000000000000606482015260840161088b565b6000611ab3836123c3846127b9565b60ff1661281d565b6040516001600160a01b038316602482015260448101829052611b4b90849063a9059cbb60e01b906064015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152612831565b6001600160a01b0381163b61249b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161088b565b6000805160206131cc83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6124d383612906565b6000825111806124e05750805b15611b4b57611b728383612946565b6040516001600160a01b0380851660248301528316604482015260648101829052611b729085906323b872dd60e01b906084016123f7565b60c95460ff16610b735760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b604482015260640161088b565b600054610100900460ff166125975760405162461bcd60e51b815260040161088b90612fd8565b610b7333611f46565b600054610100900460ff166125c75760405162461bcd60e51b815260040161088b90612fd8565b60c9805460ff19169055565b600054610100900460ff16611b785760405162461bcd60e51b815260040161088b90612fd8565b6a084595161401484a0000008110156126555760405162461bcd60e51b815260206004820152601860248201527f43524b3a2072617465206973206c657373207468616e20310000000000000000604482015260640161088b565b61012d8190556040518181527f2dc8d118d310506a292b6c0b094a1b967c084fa0a728952284baf5f91dd75c2490602001610f4e565b6000816001600160401b0316116126da5760405162461bcd60e51b815260206004820152601360248201527210d492ce881a5b9d985b1a59081c195c9a5bd9606a1b604482015260640161088b565b61012e805467ffffffffffffffff19166001600160401b0383169081179091556040519081527f2bc43b269adc02ae2363dc39721192e387c6b28d764e0d64cbe3a772405fe3af90602001610f4e565b61012e54600160801b900460ff16156127855760405162461bcd60e51b815260206004820152601860248201527f43524b3a206d6178207261746520697320726561636865640000000000000000604482015260640161088b565b61278d611675565b61012f5561012e805467ffffffffffffffff60401b1916600160401b426001600160401b031602179055565b6000816001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa1580156127f9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f779190613023565b6000611ab361282c848461296b565b612979565b6000612886826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166129da9092919063ffffffff16565b90508051600014806128a75750808060200190518101906128a79190613046565b611b4b5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b606482015260840161088b565b61290f8161242e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060611ab383836040518060600160405280602781526020016131ec602791396129e9565b6000611ab383601284612a61565b60008082116129d65760405162461bcd60e51b8152602060048201526024808201527f446563696d616c73436f6e7665727465723a20636f6e76657273696f6e2066616044820152631a5b195960e21b606482015260840161088b565b5090565b6060610b5b8484600085612ac3565b6060600080856001600160a01b031685604051612a06919061308c565b600060405180830381855af49150503d8060008114612a41576040519150601f19603f3d011682016040523d82523d6000602084013e612a46565b606091505b5091509150612a5786838387612b9e565b9695505050505050565b600081831115612a9157612a758284612e28565b612a8090600a61318c565b612a8a9085612f00565b9350612abb565b81831015612abb57612aa38383612e28565b612aae90600a61318c565b612ab89085612ed3565b93505b509192915050565b606082471015612b245760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b606482015260840161088b565b600080866001600160a01b03168587604051612b40919061308c565b60006040518083038185875af1925050503d8060008114612b7d576040519150601f19603f3d011682016040523d82523d6000602084013e612b82565b606091505b5091509150612b9387838387612b9e565b979650505050505050565b60608315612c0d578251600003612c06576001600160a01b0385163b612c065760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161088b565b5081610b5b565b610b5b8383815115612c225781518083602001fd5b8060405162461bcd60e51b815260040161088b9190613198565b6001600160a01b038116811461091457600080fd5b600060208284031215612c6357600080fd5b8135611ab381612c3c565b600060208284031215612c8057600080fd5b5035919050565b60008060408385031215612c9a57600080fd5b823591506020830135612cac81612c3c565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060408385031215612ce057600080fd5b8235612ceb81612c3c565b915060208301356001600160401b0380821115612d0757600080fd5b818501915085601f830112612d1b57600080fd5b813581811115612d2d57612d2d612cb7565b604051601f8201601f19908116603f01168101908382118183101715612d5557612d55612cb7565b81604052828152886020848701011115612d6e57600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b600060208284031215612da257600080fd5b81356001600160401b0381168114611ab357600080fd5b60006101008284031215612dcc57600080fd5b50919050565b60008060408385031215612de557600080fd5b8235612df081612c3c565b91506020830135612cac81612c3c565b600060208284031215612dcc57600080fd5b634e487b7160e01b600052601160045260246000fd5b81810381811115610f7757610f77612e12565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b6163746976652070726f787960a01b606082015260800190565b8082028115828204841417610f7757610f77612e12565b634e487b7160e01b600052601260045260246000fd5b600082612f0f57612f0f612eea565b500490565b80820180821115610f7757610f77612e12565b600060208284031215612f3957600080fd5b5051919050565b6001600160401b03828116828216039080821115612f6057612f60612e12565b5092915050565b60006001600160401b0380841680612f8157612f81612eea565b92169190910492915050565b60006001600160401b0380841680612fa757612fa7612eea565b92169190910692915050565b60008060408385031215612fc657600080fd5b825191506020830151612cac81612c3c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006020828403121561303557600080fd5b815160ff81168114611ab357600080fd5b60006020828403121561305857600080fd5b81518015158114611ab357600080fd5b60005b8381101561308357818101518382015260200161306b565b50506000910152565b6000825161309e818460208701613068565b9190910192915050565b600181815b808511156130e35781600019048211156130c9576130c9612e12565b808516156130d657918102915b93841c93908002906130ad565b509250929050565b6000826130fa57506001610f77565b8161310757506000610f77565b816001811461311d576002811461312757613143565b6001915050610f77565b60ff84111561313857613138612e12565b50506001821b610f77565b5060208310610133831016604e8410600b8410161715613166575081810a610f77565b61317083836130a8565b806000190482111561318457613184612e12565b029392505050565b6000611ab383836130eb565b60208152600082518060208401526131b7816040850160208701613068565b601f01601f1916919091016040019291505056fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212207c99e4b71d6e169135da03779b2d8fe27f8f29b7e8d482f0023b099d62caac1864736f6c63430008130033"
Deployed ByteCode
"0x6080604052600436106102555760003560e01c80637dc0d1d011610139578063b6b55f25116100b6578063f0f442601161007a578063f0f44260146106eb578063f2fde38b1461070b578063f55905621461072b578063f70f48a91461074b578063f7fb07b01461076b578063fee151ae1461078157600080fd5b8063b6b55f2514610663578063d0f37f4c14610676578063d46b64061461068b578063e65896c9146106ab578063ea5cbe07146106cb57600080fd5b80638da5cb5b116100fd5780638da5cb5b1461058d578063912119af146105ab578063987b7605146105c15780639aad5c9a146105e1578063a87430ba1461060157600080fd5b80637dc0d1d0146105045780637e7fc8eb146105255780638456cb591461054557806385a373171461055a57806386b9d81f1461057a57600080fd5b80634c89867f116101d257806361d027b31161019657806361d027b31461045157806367779fe2146104725780636e8c78fd1461049a578063715018a6146104ba57806371faedef146104cf5780637adbf973146104e457600080fd5b80634c89867f146103be5780634f1ef286146103e457806352059756146103f757806352d1902d146104185780635c975abb1461042d57600080fd5b80633d1b3d69116102195780633d1b3d691461030e5780633f4ba83a1461033c5780634046ebae14610351578063456dc17a1461038a5780634b3fd148146103ab57600080fd5b806301c76f8114610261578063179680fe146102835780632e1a7d4d146102bb5780633659cfe6146102db578063371fd8e6146102fb57600080fd5b3661025c57005b600080fd5b34801561026d57600080fd5b5061028161027c366004612c51565b610799565b005b34801561028f57600080fd5b5061012e546001600160401b03165b6040516001600160401b0390911681526020015b60405180910390f35b3480156102c757600080fd5b506102816102d6366004612c6e565b6107ec565b3480156102e757600080fd5b506102816102f6366004612c51565b610917565b610281610309366004612c6e565b6109f3565b34801561031a57600080fd5b5061032e610329366004612c51565b610b1a565b6040519081526020016102b2565b34801561034857600080fd5b50610281610b63565b34801561035d57600080fd5b5061013454610372906001600160a01b031681565b6040516001600160a01b0390911681526020016102b2565b34801561039657600080fd5b5061013154610372906001600160a01b031681565b6102816103b9366004612c87565b610b75565b3480156103ca57600080fd5b5061012e54600160401b90046001600160401b031661029e565b6102816103f2366004612ccd565b610cd1565b34801561040357600080fd5b5061013054610372906001600160a01b031681565b34801561042457600080fd5b5061032e610d9d565b34801561043957600080fd5b5060c95460ff165b60405190151581526020016102b2565b34801561045d57600080fd5b5061013354610372906001600160a01b031681565b34801561047e57600080fd5b5061037273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b3480156104a657600080fd5b5061012e54600160801b900460ff16610441565b3480156104c657600080fd5b50610281610e50565b3480156104db57600080fd5b50610281610e62565b3480156104f057600080fd5b506102816104ff366004612c51565b610efb565b34801561051057600080fd5b5061013254610372906001600160a01b031681565b34801561053157600080fd5b5061032e610540366004612d90565b610f59565b34801561055157600080fd5b506102816110d5565b34801561056657600080fd5b50610281610575366004612db9565b6110e5565b610281610588366004612dd2565b6112d0565b34801561059957600080fd5b506097546001600160a01b0316610372565b3480156105b757600080fd5b5061012d5461032e565b3480156105cd57600080fd5b5061032e6105dc366004612c51565b61146c565b3480156105ed57600080fd5b506102816105fc366004612c6e565b611527565b34801561060d57600080fd5b5061062161061c366004612c51565b611538565b6040516102b29190600060a082019050825182526020830151602083015260408301516040830152606083015160608301526080830151608083015292915050565b610281610671366004612c6e565b6115c3565b34801561068257600080fd5b5061032e611675565b34801561069757600080fd5b506102816106a6366004612e00565b611685565b3480156106b757600080fd5b5061032e6106c6366004612c51565b611738565b3480156106d757600080fd5b506102816106e6366004612c51565b6117a8565b3480156106f757600080fd5b50610281610706366004612c51565b6117cb565b34801561071757600080fd5b50610281610726366004612c51565b611822565b34801561073757600080fd5b50610441610746366004612c51565b611898565b34801561075757600080fd5b50610281610766366004612d90565b6118c2565b34801561077757600080fd5b5061012f5461032e565b34801561078d57600080fd5b506101355461032e9081565b6107a16118d3565b61013480546001600160a01b0319166001600160a01b0383169081179091556040517fe8c0056707ed008ae443ab5de430ae0701dacac38472cca13c9c1d02593ef88c90600090a250565b6107f461192d565b6107fc611973565b33610806816119cc565b6001600160a01b038116600090815261013660205260409020805461082c908490611aa2565b925061083783611aba565b61084082610b1a565b8311156108945760405162461bcd60e51b815260206004820152601d60248201527f4c6f616e506f6f6c3a204e6f7420656e6f7567682062616c616e63652e00000060448201526064015b60405180910390fd5b828160000160008282546108a89190612e28565b9091555050610130546108c5906001600160a01b03168385611b0a565b816001600160a01b03167f7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d58460405161090091815260200190565b60405180910390a25050610914600160fb55565b50565b6001600160a01b037f0000000000000000000000008991011ee1cea8c336d373472c9f6926c001287716300361095f5760405162461bcd60e51b815260040161088b90612e3b565b7f0000000000000000000000008991011ee1cea8c336d373472c9f6926c00128776001600160a01b03166109a86000805160206131cc833981519152546001600160a01b031690565b6001600160a01b0316146109ce5760405162461bcd60e51b815260040161088b90612e87565b6109d781611b7f565b6040805160008082526020820190925261091491839190611b87565b6109fb61192d565b610a03611973565b33610a0d816119cc565b6001600160a01b0381166000908152610136602052604090206001810154610a358482611aa2565b9350610a4084611aba565b61013154610a58906001600160a01b03168486611cf2565b6000610a648583612e28565b6001840181905590506000819003610a89576000600384018190556002840155610ac9565b610a91611675565b610aa66a084595161401484a00000087612ed3565b610ab09190612f00565b836002016000828254610ac39190612e28565b90915550505b836001600160a01b03167f0516911bcc3a0a7412a44601057c0a0a1ec628bde049a84284bc42886653448886604051610b0491815260200190565b60405180910390a250505050610914600160fb55565b6001600160a01b0381166000908152610136602052604081205481610b3e84611dff565b9050808211610b51575060009392505050565b610b5b8183612e28565b949350505050565b610b6b6118d3565b610b73611ef4565b565b610b7d61192d565b610b85611973565b610b8e82611aba565b33610b98816119cc565b6001600160a01b038116600090815261013660205260409020610bba8261146c565b841115610c095760405162461bcd60e51b815260206004820152601f60248201527f4c6f616e506f6f6c3a20556e7361666520626f72726f7720616d6f756e742e00604482015260640161088b565b83816001016000828254610c1d9190612f14565b90915550610c2b9050611675565b610c406a084595161401484a00000086612ed3565b610c4a9190612f00565b816002016000828254610c5d9190612f14565b909155505061013154610c7a906001600160a01b03168486611b0a565b604080516001600160a01b038581168252602082018790528416917f3fc499aeb0bb1cb58b6de8b02b3f86f4e7394e9690bef0110e32ced8a563104591015b60405180910390a25050610ccd600160fb55565b5050565b6001600160a01b037f0000000000000000000000008991011ee1cea8c336d373472c9f6926c0012877163003610d195760405162461bcd60e51b815260040161088b90612e3b565b7f0000000000000000000000008991011ee1cea8c336d373472c9f6926c00128776001600160a01b0316610d626000805160206131cc833981519152546001600160a01b031690565b6001600160a01b031614610d885760405162461bcd60e51b815260040161088b90612e87565b610d9182611b7f565b610ccd82826001611b87565b6000306001600160a01b037f0000000000000000000000008991011ee1cea8c336d373472c9f6926c00128771614610e3d5760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c60448201527f6c6564207468726f7567682064656c656761746563616c6c0000000000000000606482015260840161088b565b506000805160206131cc83398151915290565b610e586118d3565b610b736000611f46565b306001600160a01b031663d0f37f4c6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610ebc575060408051601f3d908101601f19168201909252610eb991810190612f27565b60015b610ed65761012e805460ff60801b1916600160801b179055565b610ede611f98565b81036109145761012e805460ff60801b1916600160801b17905550565b610f036118d3565b61013280546001600160a01b0319166001600160a01b0383169081179091556040519081527f3f32684a32a11dabdbb8c0177de80aa3ae36a004d75210335b49e544e48cd0aa906020015b60405180910390a150565b61012e54600090600160801b900460ff1615610f7d57610f77611f98565b92915050565b61012e546001600160401b03600160401b90910481169083168110610fa757505061012f54919050565b6000610fb38285612f40565b61012e549091506001600160401b03166000610fcf8284612f67565b90506000610fdd8385612f8d565b61012d5461012f54919250906001600160401b0384161561103357600061100d83866001600160401b0316611fbf565b90506a084595161401484a0000006110258284612ed3565b61102f9190612f00565b9150505b6001600160401b038316156110b65760006001600160401b038087169085166110676a084595161401484a00000086612e28565b6110719190612ed3565b61107b9190612f00565b611090906a084595161401484a000000612f14565b90506a084595161401484a0000006110a88284612ed3565b6110b29190612f00565b9150505b6110c86110c1611f98565b8290611aa2565b9998505050505050505050565b6110dd6118d3565b610b73612042565b600054610100900460ff16158080156111055750600054600160ff909116105b8061111f5750303b15801561111f575060005460ff166001145b6111825760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161088b565b6000805460ff1916600117905580156111a5576000805461ff0019166101001790555b6111ad61207f565b6111b56120a6565b6111bd6120d5565b6111c5612104565b6111e360c08301356111de610100850160e08601612d90565b612133565b6111ec82611685565b6111ff6104ff6080840160608501612c51565b61121261070660a0840160808501612c51565b61122561027c60c0840160a08501612c51565b6112356040830160208401612c51565b61013080546001600160a01b0319166001600160a01b03929092169190911790556112666060830160408401612c51565b61013180546001600160a01b0319166001600160a01b03929092169190911790558015610ccd576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b6112d861192d565b6112e0611973565b610134546001600160a01b0316331461133b5760405162461bcd60e51b815260206004820152601b60248201527f4c6f616e506f6f6c3a204e6f742061206c697175696461746f722e0000000000604482015260640161088b565b611344826119cc565b61134d82611898565b6113a55760405162461bcd60e51b815260206004820152602360248201527f4c6f616e506f6f6c3a20557365722063616e2774206265206c6971756964617460448201526232b21760e91b606482015260840161088b565b6001600160a01b0380831660009081526101366020526040902060018101546101315461013454929391926113df92918216911683611cf2565b6101305482546113fa916001600160a01b0316908590611b0a565b6001600160a01b038481166000818152610136602090815260408083208381556001810184905560028101849055600381018490556004019290925581519387168452830184905290917fde0aa27286f5cb3a4ed853dc4823ead62d63e92cdf13de09d6aece56970721a49101610cb9565b6000806b033b2e3c9fd0803ce80000006101356000015461148c85610b1a565b6114969190612ed3565b6114a09190612f00565b610132546101305460405163449e815d60e01b81526001600160a01b0391821660048201526024810184905292935060009291169063449e815d906044016040805180830381865afa1580156114fa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061151e9190612fb3565b50949350505050565b61152f6118d3565b610914816121a2565b61156a6040518060a0016040528060008152602001600081526020016000815260200160008152602001600081525090565b506001600160a01b031660009081526101366020908152604091829020825160a0810184528154815260018201549281019290925260028101549282019290925260038201546060820152600490910154608082015290565b6115cb61192d565b6115d3611973565b6115dc81611aba565b336115e6816119cc565b610130546115fe906001600160a01b03168284611cf2565b6001600160a01b0381166000908152610136602052604081208054849290611627908490612f14565b90915550506040518281526001600160a01b038216907f2da466a7b24304f47e87fa2e1e5a81b9831ce54fec19055ce277ca2f39ba42c49060200160405180910390a250610914600160fb55565b600061168042610f59565b905090565b61168d6118d3565b6b033b2e3c9fd0803ce8000000813511156116f65760405162461bcd60e51b815260206004820152602360248201527f4c6f616e506f6f6c3a20496e76616c696420636f6c6c61746572616c2072617460448201526234b79760e91b606482015260840161088b565b80610135611705828290359055565b5050604051813581527f8916c297dad8c35c95ebb9bdc996c37d30aa3e5cb778e7b54d9c06160a31872790602001610f4e565b6001600160a01b038116600090815261013660205260408120600381015482906a084595161401484a00000061176c611675565b846002015461177b9190612ed3565b6117859190612f00565b61178f9190612e28565b9050610b5b8260010154826121b390919063ffffffff16565b6117b061192d565b6117b8611973565b6117c1816119cc565b610914600160fb55565b6117d36118d3565b61013380546001600160a01b0319166001600160a01b0383169081179091556040519081527f3c864541ef71378c6229510ed90f376565ee42d9c5e0904a984a9e863e6db44f90602001610f4e565b61182a6118d3565b6001600160a01b03811661188f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161088b565b61091481611f46565b6001600160a01b038116600090815261013660205260408120546118bb83611dff565b1192915050565b6118ca6118d3565b610914816121c2565b6097546001600160a01b03163314610b735760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161088b565b60c95460ff1615610b735760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b604482015260640161088b565b600260fb54036119c55760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015260640161088b565b600260fb55565b6001600160a01b03811660009081526101366020526040812042600482015590806119f6846121d3565b9150915080600003611a085750505050565b81836003016000828254611a1c9190612f14565b9091555050825481908490600090611a35908490612e28565b90915550506101305461013354611a59916001600160a01b03908116911683611b0a565b836001600160a01b03167f075a2720282fdf622141dae0b048ef90a21a7e57c134c76912d19d006b3b3f6f82604051611a9491815260200190565b60405180910390a250505050565b6000818310611ab15781611ab3565b825b9392505050565b806000036109145760405162461bcd60e51b815260206004820152601960248201527f4c6f616e506f6f6c3a20496e76616c696420616d6f756e742e00000000000000604482015260640161088b565b611b1381611aba565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b03841601611b5057611b4b6001600160a01b0383168261229b565b505050565b6000611b5c82856123b4565b9050611b726001600160a01b03851684836123cb565b50505050565b600160fb55565b6109146118d3565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615611bba57611b4b8361242e565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015611c14575060408051601f3d908101601f19168201909252611c1191810190612f27565b60015b611c775760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b606482015260840161088b565b6000805160206131cc8339815191528114611ce65760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b606482015260840161088b565b50611b4b8383836124ca565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b03841601611d8e5780341015611d675760405162461bcd60e51b815260206004820181905260248201527f4c6f616e506f6f6c3a20496e76616c6964206e617469766520616d6f756e742e604482015260640161088b565b6000611d738234612e28565b90508015611b7257611b726001600160a01b0384168261229b565b3415611ddc5760405162461bcd60e51b815260206004820181905260248201527f4c6f616e506f6f6c3a20496e76616c6964206e617469766520616d6f756e742e604482015260640161088b565b6000611de882856123b4565b9050611b726001600160a01b0385168430846124ef565b6001600160a01b03811660009081526101366020526040812060010154808203611e2c5750600092915050565b610132546101315460405163449e815d60e01b81526001600160a01b03918216600482015260248101849052600092919091169063449e815d906044016040805180830381865afa158015611e85573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ea99190612fb3565b5090506000611eb7856121d3565b61013554909250829150611ed76b033b2e3c9fd0803ce800000085612ed3565b611ee19190612f00565b611eeb9190612f14565b95945050505050565b611efc612527565b60c9805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60006116806a084595161401484a0000006fffffffffffffffffffffffffffffffff612ed3565b60006001821615611fd05782611fdd565b6a084595161401484a0000005b90505b60019190911c908115610f77576a084595161401484a0000006120038480612ed3565b61200d9190612f00565b92508160011660010361203d576a084595161401484a0000006120308483612ed3565b61203a9190612f00565b90505b611fe0565b61204a61192d565b60c9805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258611f293390565b600054610100900460ff16610b735760405162461bcd60e51b815260040161088b90612fd8565b600054610100900460ff166120cd5760405162461bcd60e51b815260040161088b90612fd8565b610b73612570565b600054610100900460ff166120fc5760405162461bcd60e51b815260040161088b90612fd8565b610b736125a0565b600054610100900460ff1661212b5760405162461bcd60e51b815260040161088b90612fd8565b610b736125d3565b600054610100900460ff1661215a5760405162461bcd60e51b815260040161088b90612fd8565b6a084595161401484a00000061012f5561012e805467ffffffffffffffff60401b1916600160401b426001600160401b031602179055612199826125fa565b610ccd8161268b565b6121aa61272a565b610914816125fa565b6000818311611ab15781611ab3565b6121ca61272a565b6109148161268b565b6001600160a01b0381166000908152610136602052604081206001015481906121fb84611738565b6122059190612e28565b91508160000361221a57506000928392509050565b610132546101315460405163449e815d60e01b81526001600160a01b0391821660048201526024810185905291169063449e815d906044016040805180830381865afa15801561226e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122929190612fb3565b50919391925050565b804710156122eb5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e6365000000604482015260640161088b565b6000826001600160a01b03168260405160006040518083038185875af1925050503d8060008114612338576040519150601f19603f3d011682016040523d82523d6000602084013e61233d565b606091505b5050905080611b4b5760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d61792068617665207265766572746564000000000000606482015260840161088b565b6000611ab3836123c3846127b9565b60ff1661281d565b6040516001600160a01b038316602482015260448101829052611b4b90849063a9059cbb60e01b906064015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152612831565b6001600160a01b0381163b61249b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161088b565b6000805160206131cc83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6124d383612906565b6000825111806124e05750805b15611b4b57611b728383612946565b6040516001600160a01b0380851660248301528316604482015260648101829052611b729085906323b872dd60e01b906084016123f7565b60c95460ff16610b735760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b604482015260640161088b565b600054610100900460ff166125975760405162461bcd60e51b815260040161088b90612fd8565b610b7333611f46565b600054610100900460ff166125c75760405162461bcd60e51b815260040161088b90612fd8565b60c9805460ff19169055565b600054610100900460ff16611b785760405162461bcd60e51b815260040161088b90612fd8565b6a084595161401484a0000008110156126555760405162461bcd60e51b815260206004820152601860248201527f43524b3a2072617465206973206c657373207468616e20310000000000000000604482015260640161088b565b61012d8190556040518181527f2dc8d118d310506a292b6c0b094a1b967c084fa0a728952284baf5f91dd75c2490602001610f4e565b6000816001600160401b0316116126da5760405162461bcd60e51b815260206004820152601360248201527210d492ce881a5b9d985b1a59081c195c9a5bd9606a1b604482015260640161088b565b61012e805467ffffffffffffffff19166001600160401b0383169081179091556040519081527f2bc43b269adc02ae2363dc39721192e387c6b28d764e0d64cbe3a772405fe3af90602001610f4e565b61012e54600160801b900460ff16156127855760405162461bcd60e51b815260206004820152601860248201527f43524b3a206d6178207261746520697320726561636865640000000000000000604482015260640161088b565b61278d611675565b61012f5561012e805467ffffffffffffffff60401b1916600160401b426001600160401b031602179055565b6000816001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa1580156127f9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f779190613023565b6000611ab361282c848461296b565b612979565b6000612886826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166129da9092919063ffffffff16565b90508051600014806128a75750808060200190518101906128a79190613046565b611b4b5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b606482015260840161088b565b61290f8161242e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060611ab383836040518060600160405280602781526020016131ec602791396129e9565b6000611ab383601284612a61565b60008082116129d65760405162461bcd60e51b8152602060048201526024808201527f446563696d616c73436f6e7665727465723a20636f6e76657273696f6e2066616044820152631a5b195960e21b606482015260840161088b565b5090565b6060610b5b8484600085612ac3565b6060600080856001600160a01b031685604051612a06919061308c565b600060405180830381855af49150503d8060008114612a41576040519150601f19603f3d011682016040523d82523d6000602084013e612a46565b606091505b5091509150612a5786838387612b9e565b9695505050505050565b600081831115612a9157612a758284612e28565b612a8090600a61318c565b612a8a9085612f00565b9350612abb565b81831015612abb57612aa38383612e28565b612aae90600a61318c565b612ab89085612ed3565b93505b509192915050565b606082471015612b245760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b606482015260840161088b565b600080866001600160a01b03168587604051612b40919061308c565b60006040518083038185875af1925050503d8060008114612b7d576040519150601f19603f3d011682016040523d82523d6000602084013e612b82565b606091505b5091509150612b9387838387612b9e565b979650505050505050565b60608315612c0d578251600003612c06576001600160a01b0385163b612c065760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161088b565b5081610b5b565b610b5b8383815115612c225781518083602001fd5b8060405162461bcd60e51b815260040161088b9190613198565b6001600160a01b038116811461091457600080fd5b600060208284031215612c6357600080fd5b8135611ab381612c3c565b600060208284031215612c8057600080fd5b5035919050565b60008060408385031215612c9a57600080fd5b823591506020830135612cac81612c3c565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060408385031215612ce057600080fd5b8235612ceb81612c3c565b915060208301356001600160401b0380821115612d0757600080fd5b818501915085601f830112612d1b57600080fd5b813581811115612d2d57612d2d612cb7565b604051601f8201601f19908116603f01168101908382118183101715612d5557612d55612cb7565b81604052828152886020848701011115612d6e57600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b600060208284031215612da257600080fd5b81356001600160401b0381168114611ab357600080fd5b60006101008284031215612dcc57600080fd5b50919050565b60008060408385031215612de557600080fd5b8235612df081612c3c565b91506020830135612cac81612c3c565b600060208284031215612dcc57600080fd5b634e487b7160e01b600052601160045260246000fd5b81810381811115610f7757610f77612e12565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b6163746976652070726f787960a01b606082015260800190565b8082028115828204841417610f7757610f77612e12565b634e487b7160e01b600052601260045260246000fd5b600082612f0f57612f0f612eea565b500490565b80820180821115610f7757610f77612e12565b600060208284031215612f3957600080fd5b5051919050565b6001600160401b03828116828216039080821115612f6057612f60612e12565b5092915050565b60006001600160401b0380841680612f8157612f81612eea565b92169190910492915050565b60006001600160401b0380841680612fa757612fa7612eea565b92169190910692915050565b60008060408385031215612fc657600080fd5b825191506020830151612cac81612c3c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006020828403121561303557600080fd5b815160ff81168114611ab357600080fd5b60006020828403121561305857600080fd5b81518015158114611ab357600080fd5b60005b8381101561308357818101518382015260200161306b565b50506000910152565b6000825161309e818460208701613068565b9190910192915050565b600181815b808511156130e35781600019048211156130c9576130c9612e12565b808516156130d657918102915b93841c93908002906130ad565b509250929050565b6000826130fa57506001610f77565b8161310757506000610f77565b816001811461311d576002811461312757613143565b6001915050610f77565b60ff84111561313857613138612e12565b50506001821b610f77565b5060208310610133831016604e8410600b8410161715613166575081810a610f77565b61317083836130a8565b806000190482111561318457613184612e12565b029392505050565b6000611ab383836130eb565b60208152600082518060208401526131b7816040850160208701613068565b601f01601f1916919091016040019291505056fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212207c99e4b71d6e169135da03779b2d8fe27f8f29b7e8d482f0023b099d62caac1864736f6c63430008130033"