false
false

Contract Address Details

0x73d16A9FA7Dd9e50eD476C279a3D3C17f508D4a0

Token
XSGD (XSGD)
Creator
0x0902d3–7aaa7f at 0x7f3cc6–7c2de4
Balance
0 CyberMiles
Tokens
Fetching tokens...
Transactions
53 Transactions
Transfers
0 Transfers
Gas Used
2,350,667
Last Balance Update
8059340

Contract Creation Code

Verify & Publish
0x60806040526001600860006101000a81548160ff0219169083151502179055503480156200002c57600080fd5b50336040518060400160405280600481526020017f58534744000000000000000000000000000000000000000000000000000000008152506040518060400160405280600481526020017f58534744000000000000000000000000000000000000000000000000000000008152508160039081620000ab91906200061a565b508060049081620000bd91906200061a565b505050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603620001355760006040517f1e4fbdf70000000000000000000000000000000000000000000000000000000081526004016200012c919062000746565b60405180910390fd5b62000146816200016360201b60201c565b506200015c6000801b336200022960201b60201c565b5062000763565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60006200023d83836200032d60201b60201c565b620003225760016005600085815260200190815260200160002060000160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620002be6200039860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a46001905062000327565b600090505b92915050565b60006005600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b600033905090565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200042257607f821691505b602082108103620004385762000437620003da565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620004a27fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000463565b620004ae868362000463565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620004fb620004f5620004ef84620004c6565b620004d0565b620004c6565b9050919050565b6000819050919050565b6200051783620004da565b6200052f620005268262000502565b84845462000470565b825550505050565b600090565b6200054662000537565b620005538184846200050c565b505050565b5b818110156200057b576200056f6000826200053c565b60018101905062000559565b5050565b601f821115620005ca5762000594816200043e565b6200059f8462000453565b81016020851015620005af578190505b620005c7620005be8562000453565b83018262000558565b50505b505050565b600082821c905092915050565b6000620005ef60001984600802620005cf565b1980831691505092915050565b60006200060a8383620005dc565b9150826002028217905092915050565b6200062582620003a0565b67ffffffffffffffff811115620006415762000640620003ab565b5b6200064d825462000409565b6200065a8282856200057f565b600060209050601f8311600181146200069257600084156200067d578287015190505b620006898582620005fc565b865550620006f9565b601f198416620006a2866200043e565b60005b82811015620006cc57848901518255600182019150602085019450602081019050620006a5565b86831015620006ec5784890151620006e8601f891682620005dc565b8355505b6001600288020188555050505b505050505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200072e8262000701565b9050919050565b620007408162000721565b82525050565b60006020820190506200075d600083018462000735565b92915050565b6122bc80620007736000396000f3fe608060405234801561001057600080fd5b50600436106101e55760003560e01c8063715018a61161010f578063a217fddf116100a2578063dd62ed3e11610071578063dd62ed3e14610542578063f2fde38b14610572578063f9f92be41461058e578063fe6d8124146105aa576101e5565b8063a217fddf146104ce578063a9059cbb146104ec578063ac6bc00d1461051c578063d547741f14610526576101e5565b806391d14854116100de57806391d148541461044857806395d89b4114610478578063983b2d5614610496578063a0712d68146104b2576101e5565b8063715018a6146103fa57806375e3661e146104045780637b52fd96146104205780638da5cb5b1461042a576101e5565b80632a0acc6a1161018757806333bebb771161015657806333bebb771461037657806336568abe1461039257806370480275146103ae57806370a08231146103ca576101e5565b80632a0acc6a146103025780632f2ff15d146103205780633092afd51461033c578063313ce56714610358576101e5565b80631785f53c116101c35780631785f53c1461026857806318160ddd1461028457806323b872dd146102a2578063248a9ca3146102d2576101e5565b806301ffc9a7146101ea57806306fdde031461021a578063095ea7b314610238575b600080fd5b61020460048036038101906101ff9190611c5d565b6105c8565b6040516102119190611ca5565b60405180910390f35b610222610642565b60405161022f9190611d50565b60405180910390f35b610252600480360381019061024d9190611e06565b6106d4565b60405161025f9190611ca5565b60405180910390f35b610282600480360381019061027d9190611e46565b6106f7565b005b61028c61072c565b6040516102999190611e82565b60405180910390f35b6102bc60048036038101906102b79190611e9d565b610736565b6040516102c99190611ca5565b60405180910390f35b6102ec60048036038101906102e79190611f26565b6107fc565b6040516102f99190611f62565b60405180910390f35b61030a61081c565b6040516103179190611f62565b60405180910390f35b61033a60048036038101906103359190611f7d565b610840565b005b61035660048036038101906103519190611e46565b610862565b005b610360610897565b60405161036d9190611fd9565b60405180910390f35b610390600480360381019061038b9190611e9d565b6108a0565b005b6103ac60048036038101906103a79190611f7d565b610919565b005b6103c860048036038101906103c39190611e46565b610994565b005b6103e460048036038101906103df9190611e46565b6109c9565b6040516103f19190611e82565b60405180910390f35b610402610a11565b005b61041e60048036038101906104199190611e46565b610a25565b005b610428610ae9565b005b610432610b6f565b60405161043f9190612003565b60405180910390f35b610462600480360381019061045d9190611f7d565b610b99565b60405161046f9190611ca5565b60405180910390f35b610480610c04565b60405161048d9190611d50565b60405180910390f35b6104b060048036038101906104ab9190611e46565b610c96565b005b6104cc60048036038101906104c7919061201e565b610ccb565b005b6104d6610ce0565b6040516104e39190611f62565b60405180910390f35b61050660048036038101906105019190611e06565b610ce7565b6040516105139190611ca5565b60405180910390f35b610524610de0565b005b610540600480360381019061053b9190611f7d565b610e66565b005b61055c6004803603810190610557919061204b565b610e88565b6040516105699190611e82565b60405180910390f35b61058c60048036038101906105879190611e46565b610f0f565b005b6105a860048036038101906105a39190611e46565b610f95565b005b6105b2611059565b6040516105bf9190611f62565b60405180910390f35b60007f7965db0b000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061063b575061063a8261107d565b5b9050919050565b606060038054610651906120ba565b80601f016020809104026020016040519081016040528092919081815260200182805461067d906120ba565b80156106ca5780601f1061069f576101008083540402835291602001916106ca565b820191906000526020600020905b8154815290600101906020018083116106ad57829003601f168201915b5050505050905090565b6000806106df6110e7565b90506106ec8185856110ef565b600191505092915050565b6106ff611101565b6107297ff23ec0bb4210edd5cba85afd05127efcd2fc6a781bfed49188da1081670b22d882610e66565b50565b6000600254905090565b600061074184611188565b1561078357836040517f73dbe98600000000000000000000000000000000000000000000000000000000815260040161077a9190612003565b60405180910390fd5b61078c83611188565b156107ce57826040517f73dbe9860000000000000000000000000000000000000000000000000000000081526004016107c59190612003565b60405180910390fd5b60006107d86110e7565b90506107e58582856111fd565b6107f0858585611291565b60019150509392505050565b600060056000838152602001908152602001600020600101549050919050565b7ff23ec0bb4210edd5cba85afd05127efcd2fc6a781bfed49188da1081670b22d881565b610849826107fc565b61085281611385565b61085c8383611399565b50505050565b61086a611101565b6108947f39eb9ec2059d897c44a17440c762c429de204f6fddd727156ca52b8da086a6f782610e66565b50565b60006002905090565b6108ca7ff23ec0bb4210edd5cba85afd05127efcd2fc6a781bfed49188da1081670b22d833610b99565b610909576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161090090612137565b60405180910390fd5b610914838383611291565b505050565b6109216110e7565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610985576040517f6697b23200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61098f828261148b565b505050565b61099c611101565b6109c67ff23ec0bb4210edd5cba85afd05127efcd2fc6a781bfed49188da1081670b22d882610840565b50565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610a19611101565b610a23600061157e565b565b610a4f7ff23ec0bb4210edd5cba85afd05127efcd2fc6a781bfed49188da1081670b22d833610b99565b610a8e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a8590612137565b60405180910390fd5b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b610b137ff23ec0bb4210edd5cba85afd05127efcd2fc6a781bfed49188da1081670b22d833610b99565b610b52576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b4990612137565b60405180910390fd5b6001600860006101000a81548160ff021916908315150217905550565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60006005600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b606060048054610c13906120ba565b80601f0160208091040260200160405190810160405280929190818152602001828054610c3f906120ba565b8015610c8c5780601f10610c6157610100808354040283529160200191610c8c565b820191906000526020600020905b815481529060010190602001808311610c6f57829003601f168201915b5050505050905090565b610c9e611101565b610cc87f39eb9ec2059d897c44a17440c762c429de204f6fddd727156ca52b8da086a6f782610840565b50565b610cd3611644565b610cdd33826116af565b50565b6000801b81565b6000610cf233611188565b15610d3457336040517f73dbe986000000000000000000000000000000000000000000000000000000008152600401610d2b9190612003565b60405180910390fd5b610d3d83611188565b15610d7f57826040517f73dbe986000000000000000000000000000000000000000000000000000000008152600401610d769190612003565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610dca57610dbb611644565b610dc53383611731565b610dd6565b610dd5338484611291565b5b6001905092915050565b610e0a7ff23ec0bb4210edd5cba85afd05127efcd2fc6a781bfed49188da1081670b22d833610b99565b610e49576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e4090612137565b60405180910390fd5b6000600860006101000a81548160ff021916908315150217905550565b610e6f826107fc565b610e7881611385565b610e82838361148b565b50505050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610f17611101565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610f895760006040517f1e4fbdf7000000000000000000000000000000000000000000000000000000008152600401610f809190612003565b60405180910390fd5b610f928161157e565b50565b610fbf7ff23ec0bb4210edd5cba85afd05127efcd2fc6a781bfed49188da1081670b22d833610b99565b610ffe576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ff590612137565b60405180910390fd5b6001600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b7f39eb9ec2059d897c44a17440c762c429de204f6fddd727156ca52b8da086a6f781565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b600033905090565b6110fc83838360016117b3565b505050565b6111096110e7565b73ffffffffffffffffffffffffffffffffffffffff16611127610b6f565b73ffffffffffffffffffffffffffffffffffffffff16146111865761114a6110e7565b6040517f118cdaa700000000000000000000000000000000000000000000000000000000815260040161117d9190612003565b60405180910390fd5b565b6000600860009054906101000a900460ff16156111f357600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1690506111f8565b600090505b919050565b60006112098484610e88565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811461128b578181101561127b578281836040517ffb8f41b200000000000000000000000000000000000000000000000000000000815260040161127293929190612157565b60405180910390fd5b61128a848484840360006117b3565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036113035760006040517f96c6fd1e0000000000000000000000000000000000000000000000000000000081526004016112fa9190612003565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036113755760006040517fec442f0500000000000000000000000000000000000000000000000000000000815260040161136c9190612003565b60405180910390fd5b61138083838361198a565b505050565b611396816113916110e7565b611baf565b50565b60006113a58383610b99565b6114805760016005600085815260200190815260200160002060000160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555061141d6110e7565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a460019050611485565b600090505b92915050565b60006114978383610b99565b156115735760006005600085815260200190815260200160002060000160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506115106110e7565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16847ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a460019050611578565b600090505b92915050565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b61166e7f39eb9ec2059d897c44a17440c762c429de204f6fddd727156ca52b8da086a6f733610b99565b6116ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116a4906121da565b60405180910390fd5b565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036117215760006040517fec442f050000000000000000000000000000000000000000000000000000000081526004016117189190612003565b60405180910390fd5b61172d6000838361198a565b5050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036117a35760006040517f96c6fd1e00000000000000000000000000000000000000000000000000000000815260040161179a9190612003565b60405180910390fd5b6117af8260008361198a565b5050565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16036118255760006040517fe602df0500000000000000000000000000000000000000000000000000000000815260040161181c9190612003565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036118975760006040517f94280d6200000000000000000000000000000000000000000000000000000000815260040161188e9190612003565b60405180910390fd5b81600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508015611984578273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161197b9190611e82565b60405180910390a35b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036119dc5780600260008282546119d09190612229565b92505081905550611aaf565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611a68578381836040517fe450d38c000000000000000000000000000000000000000000000000000000008152600401611a5f93929190612157565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611af85780600260008282540392505081905550611b45565b806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611ba29190611e82565b60405180910390a3505050565b611bb98282610b99565b611bfc5780826040517fe2517d3f000000000000000000000000000000000000000000000000000000008152600401611bf392919061225d565b60405180910390fd5b5050565b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b611c3a81611c05565b8114611c4557600080fd5b50565b600081359050611c5781611c31565b92915050565b600060208284031215611c7357611c72611c00565b5b6000611c8184828501611c48565b91505092915050565b60008115159050919050565b611c9f81611c8a565b82525050565b6000602082019050611cba6000830184611c96565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611cfa578082015181840152602081019050611cdf565b60008484015250505050565b6000601f19601f8301169050919050565b6000611d2282611cc0565b611d2c8185611ccb565b9350611d3c818560208601611cdc565b611d4581611d06565b840191505092915050565b60006020820190508181036000830152611d6a8184611d17565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611d9d82611d72565b9050919050565b611dad81611d92565b8114611db857600080fd5b50565b600081359050611dca81611da4565b92915050565b6000819050919050565b611de381611dd0565b8114611dee57600080fd5b50565b600081359050611e0081611dda565b92915050565b60008060408385031215611e1d57611e1c611c00565b5b6000611e2b85828601611dbb565b9250506020611e3c85828601611df1565b9150509250929050565b600060208284031215611e5c57611e5b611c00565b5b6000611e6a84828501611dbb565b91505092915050565b611e7c81611dd0565b82525050565b6000602082019050611e976000830184611e73565b92915050565b600080600060608486031215611eb657611eb5611c00565b5b6000611ec486828701611dbb565b9350506020611ed586828701611dbb565b9250506040611ee686828701611df1565b9150509250925092565b6000819050919050565b611f0381611ef0565b8114611f0e57600080fd5b50565b600081359050611f2081611efa565b92915050565b600060208284031215611f3c57611f3b611c00565b5b6000611f4a84828501611f11565b91505092915050565b611f5c81611ef0565b82525050565b6000602082019050611f776000830184611f53565b92915050565b60008060408385031215611f9457611f93611c00565b5b6000611fa285828601611f11565b9250506020611fb385828601611dbb565b9150509250929050565b600060ff82169050919050565b611fd381611fbd565b82525050565b6000602082019050611fee6000830184611fca565b92915050565b611ffd81611d92565b82525050565b60006020820190506120186000830184611ff4565b92915050565b60006020828403121561203457612033611c00565b5b600061204284828501611df1565b91505092915050565b6000806040838503121561206257612061611c00565b5b600061207085828601611dbb565b925050602061208185828601611dbb565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806120d257607f821691505b6020821081036120e5576120e461208b565b5b50919050565b7f43616c6c6572206973206e6f7420612061646d696e0000000000000000000000600082015250565b6000612121601583611ccb565b915061212c826120eb565b602082019050919050565b6000602082019050818103600083015261215081612114565b9050919050565b600060608201905061216c6000830186611ff4565b6121796020830185611e73565b6121866040830184611e73565b949350505050565b7f43616c6c6572206973206e6f742061206d696e74657200000000000000000000600082015250565b60006121c4601683611ccb565b91506121cf8261218e565b602082019050919050565b600060208201905081810360008301526121f3816121b7565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061223482611dd0565b915061223f83611dd0565b9250828201905080821115612257576122566121fa565b5b92915050565b60006040820190506122726000830185611ff4565b61227f6020830184611f53565b939250505056fea2646970667358221220f79f8e44abedf9347b90b261a5cfaa6ae94b91fb75bd38657d8201e5531eb7d064736f6c63430008140033

Deployed ByteCode

0x608060405234801561001057600080fd5b50600436106101e55760003560e01c8063715018a61161010f578063a217fddf116100a2578063dd62ed3e11610071578063dd62ed3e14610542578063f2fde38b14610572578063f9f92be41461058e578063fe6d8124146105aa576101e5565b8063a217fddf146104ce578063a9059cbb146104ec578063ac6bc00d1461051c578063d547741f14610526576101e5565b806391d14854116100de57806391d148541461044857806395d89b4114610478578063983b2d5614610496578063a0712d68146104b2576101e5565b8063715018a6146103fa57806375e3661e146104045780637b52fd96146104205780638da5cb5b1461042a576101e5565b80632a0acc6a1161018757806333bebb771161015657806333bebb771461037657806336568abe1461039257806370480275146103ae57806370a08231146103ca576101e5565b80632a0acc6a146103025780632f2ff15d146103205780633092afd51461033c578063313ce56714610358576101e5565b80631785f53c116101c35780631785f53c1461026857806318160ddd1461028457806323b872dd146102a2578063248a9ca3146102d2576101e5565b806301ffc9a7146101ea57806306fdde031461021a578063095ea7b314610238575b600080fd5b61020460048036038101906101ff9190611c5d565b6105c8565b6040516102119190611ca5565b60405180910390f35b610222610642565b60405161022f9190611d50565b60405180910390f35b610252600480360381019061024d9190611e06565b6106d4565b60405161025f9190611ca5565b60405180910390f35b610282600480360381019061027d9190611e46565b6106f7565b005b61028c61072c565b6040516102999190611e82565b60405180910390f35b6102bc60048036038101906102b79190611e9d565b610736565b6040516102c99190611ca5565b60405180910390f35b6102ec60048036038101906102e79190611f26565b6107fc565b6040516102f99190611f62565b60405180910390f35b61030a61081c565b6040516103179190611f62565b60405180910390f35b61033a60048036038101906103359190611f7d565b610840565b005b61035660048036038101906103519190611e46565b610862565b005b610360610897565b60405161036d9190611fd9565b60405180910390f35b610390600480360381019061038b9190611e9d565b6108a0565b005b6103ac60048036038101906103a79190611f7d565b610919565b005b6103c860048036038101906103c39190611e46565b610994565b005b6103e460048036038101906103df9190611e46565b6109c9565b6040516103f19190611e82565b60405180910390f35b610402610a11565b005b61041e60048036038101906104199190611e46565b610a25565b005b610428610ae9565b005b610432610b6f565b60405161043f9190612003565b60405180910390f35b610462600480360381019061045d9190611f7d565b610b99565b60405161046f9190611ca5565b60405180910390f35b610480610c04565b60405161048d9190611d50565b60405180910390f35b6104b060048036038101906104ab9190611e46565b610c96565b005b6104cc60048036038101906104c7919061201e565b610ccb565b005b6104d6610ce0565b6040516104e39190611f62565b60405180910390f35b61050660048036038101906105019190611e06565b610ce7565b6040516105139190611ca5565b60405180910390f35b610524610de0565b005b610540600480360381019061053b9190611f7d565b610e66565b005b61055c6004803603810190610557919061204b565b610e88565b6040516105699190611e82565b60405180910390f35b61058c60048036038101906105879190611e46565b610f0f565b005b6105a860048036038101906105a39190611e46565b610f95565b005b6105b2611059565b6040516105bf9190611f62565b60405180910390f35b60007f7965db0b000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061063b575061063a8261107d565b5b9050919050565b606060038054610651906120ba565b80601f016020809104026020016040519081016040528092919081815260200182805461067d906120ba565b80156106ca5780601f1061069f576101008083540402835291602001916106ca565b820191906000526020600020905b8154815290600101906020018083116106ad57829003601f168201915b5050505050905090565b6000806106df6110e7565b90506106ec8185856110ef565b600191505092915050565b6106ff611101565b6107297ff23ec0bb4210edd5cba85afd05127efcd2fc6a781bfed49188da1081670b22d882610e66565b50565b6000600254905090565b600061074184611188565b1561078357836040517f73dbe98600000000000000000000000000000000000000000000000000000000815260040161077a9190612003565b60405180910390fd5b61078c83611188565b156107ce57826040517f73dbe9860000000000000000000000000000000000000000000000000000000081526004016107c59190612003565b60405180910390fd5b60006107d86110e7565b90506107e58582856111fd565b6107f0858585611291565b60019150509392505050565b600060056000838152602001908152602001600020600101549050919050565b7ff23ec0bb4210edd5cba85afd05127efcd2fc6a781bfed49188da1081670b22d881565b610849826107fc565b61085281611385565b61085c8383611399565b50505050565b61086a611101565b6108947f39eb9ec2059d897c44a17440c762c429de204f6fddd727156ca52b8da086a6f782610e66565b50565b60006002905090565b6108ca7ff23ec0bb4210edd5cba85afd05127efcd2fc6a781bfed49188da1081670b22d833610b99565b610909576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161090090612137565b60405180910390fd5b610914838383611291565b505050565b6109216110e7565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610985576040517f6697b23200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61098f828261148b565b505050565b61099c611101565b6109c67ff23ec0bb4210edd5cba85afd05127efcd2fc6a781bfed49188da1081670b22d882610840565b50565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610a19611101565b610a23600061157e565b565b610a4f7ff23ec0bb4210edd5cba85afd05127efcd2fc6a781bfed49188da1081670b22d833610b99565b610a8e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a8590612137565b60405180910390fd5b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b610b137ff23ec0bb4210edd5cba85afd05127efcd2fc6a781bfed49188da1081670b22d833610b99565b610b52576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b4990612137565b60405180910390fd5b6001600860006101000a81548160ff021916908315150217905550565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60006005600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b606060048054610c13906120ba565b80601f0160208091040260200160405190810160405280929190818152602001828054610c3f906120ba565b8015610c8c5780601f10610c6157610100808354040283529160200191610c8c565b820191906000526020600020905b815481529060010190602001808311610c6f57829003601f168201915b5050505050905090565b610c9e611101565b610cc87f39eb9ec2059d897c44a17440c762c429de204f6fddd727156ca52b8da086a6f782610840565b50565b610cd3611644565b610cdd33826116af565b50565b6000801b81565b6000610cf233611188565b15610d3457336040517f73dbe986000000000000000000000000000000000000000000000000000000008152600401610d2b9190612003565b60405180910390fd5b610d3d83611188565b15610d7f57826040517f73dbe986000000000000000000000000000000000000000000000000000000008152600401610d769190612003565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610dca57610dbb611644565b610dc53383611731565b610dd6565b610dd5338484611291565b5b6001905092915050565b610e0a7ff23ec0bb4210edd5cba85afd05127efcd2fc6a781bfed49188da1081670b22d833610b99565b610e49576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e4090612137565b60405180910390fd5b6000600860006101000a81548160ff021916908315150217905550565b610e6f826107fc565b610e7881611385565b610e82838361148b565b50505050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610f17611101565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610f895760006040517f1e4fbdf7000000000000000000000000000000000000000000000000000000008152600401610f809190612003565b60405180910390fd5b610f928161157e565b50565b610fbf7ff23ec0bb4210edd5cba85afd05127efcd2fc6a781bfed49188da1081670b22d833610b99565b610ffe576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ff590612137565b60405180910390fd5b6001600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b7f39eb9ec2059d897c44a17440c762c429de204f6fddd727156ca52b8da086a6f781565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b600033905090565b6110fc83838360016117b3565b505050565b6111096110e7565b73ffffffffffffffffffffffffffffffffffffffff16611127610b6f565b73ffffffffffffffffffffffffffffffffffffffff16146111865761114a6110e7565b6040517f118cdaa700000000000000000000000000000000000000000000000000000000815260040161117d9190612003565b60405180910390fd5b565b6000600860009054906101000a900460ff16156111f357600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1690506111f8565b600090505b919050565b60006112098484610e88565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811461128b578181101561127b578281836040517ffb8f41b200000000000000000000000000000000000000000000000000000000815260040161127293929190612157565b60405180910390fd5b61128a848484840360006117b3565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036113035760006040517f96c6fd1e0000000000000000000000000000000000000000000000000000000081526004016112fa9190612003565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036113755760006040517fec442f0500000000000000000000000000000000000000000000000000000000815260040161136c9190612003565b60405180910390fd5b61138083838361198a565b505050565b611396816113916110e7565b611baf565b50565b60006113a58383610b99565b6114805760016005600085815260200190815260200160002060000160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555061141d6110e7565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a460019050611485565b600090505b92915050565b60006114978383610b99565b156115735760006005600085815260200190815260200160002060000160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506115106110e7565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16847ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a460019050611578565b600090505b92915050565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b61166e7f39eb9ec2059d897c44a17440c762c429de204f6fddd727156ca52b8da086a6f733610b99565b6116ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116a4906121da565b60405180910390fd5b565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036117215760006040517fec442f050000000000000000000000000000000000000000000000000000000081526004016117189190612003565b60405180910390fd5b61172d6000838361198a565b5050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036117a35760006040517f96c6fd1e00000000000000000000000000000000000000000000000000000000815260040161179a9190612003565b60405180910390fd5b6117af8260008361198a565b5050565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16036118255760006040517fe602df0500000000000000000000000000000000000000000000000000000000815260040161181c9190612003565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036118975760006040517f94280d6200000000000000000000000000000000000000000000000000000000815260040161188e9190612003565b60405180910390fd5b81600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508015611984578273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161197b9190611e82565b60405180910390a35b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036119dc5780600260008282546119d09190612229565b92505081905550611aaf565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611a68578381836040517fe450d38c000000000000000000000000000000000000000000000000000000008152600401611a5f93929190612157565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611af85780600260008282540392505081905550611b45565b806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611ba29190611e82565b60405180910390a3505050565b611bb98282610b99565b611bfc5780826040517fe2517d3f000000000000000000000000000000000000000000000000000000008152600401611bf392919061225d565b60405180910390fd5b5050565b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b611c3a81611c05565b8114611c4557600080fd5b50565b600081359050611c5781611c31565b92915050565b600060208284031215611c7357611c72611c00565b5b6000611c8184828501611c48565b91505092915050565b60008115159050919050565b611c9f81611c8a565b82525050565b6000602082019050611cba6000830184611c96565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611cfa578082015181840152602081019050611cdf565b60008484015250505050565b6000601f19601f8301169050919050565b6000611d2282611cc0565b611d2c8185611ccb565b9350611d3c818560208601611cdc565b611d4581611d06565b840191505092915050565b60006020820190508181036000830152611d6a8184611d17565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611d9d82611d72565b9050919050565b611dad81611d92565b8114611db857600080fd5b50565b600081359050611dca81611da4565b92915050565b6000819050919050565b611de381611dd0565b8114611dee57600080fd5b50565b600081359050611e0081611dda565b92915050565b60008060408385031215611e1d57611e1c611c00565b5b6000611e2b85828601611dbb565b9250506020611e3c85828601611df1565b9150509250929050565b600060208284031215611e5c57611e5b611c00565b5b6000611e6a84828501611dbb565b91505092915050565b611e7c81611dd0565b82525050565b6000602082019050611e976000830184611e73565b92915050565b600080600060608486031215611eb657611eb5611c00565b5b6000611ec486828701611dbb565b9350506020611ed586828701611dbb565b9250506040611ee686828701611df1565b9150509250925092565b6000819050919050565b611f0381611ef0565b8114611f0e57600080fd5b50565b600081359050611f2081611efa565b92915050565b600060208284031215611f3c57611f3b611c00565b5b6000611f4a84828501611f11565b91505092915050565b611f5c81611ef0565b82525050565b6000602082019050611f776000830184611f53565b92915050565b60008060408385031215611f9457611f93611c00565b5b6000611fa285828601611f11565b9250506020611fb385828601611dbb565b9150509250929050565b600060ff82169050919050565b611fd381611fbd565b82525050565b6000602082019050611fee6000830184611fca565b92915050565b611ffd81611d92565b82525050565b60006020820190506120186000830184611ff4565b92915050565b60006020828403121561203457612033611c00565b5b600061204284828501611df1565b91505092915050565b6000806040838503121561206257612061611c00565b5b600061207085828601611dbb565b925050602061208185828601611dbb565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806120d257607f821691505b6020821081036120e5576120e461208b565b5b50919050565b7f43616c6c6572206973206e6f7420612061646d696e0000000000000000000000600082015250565b6000612121601583611ccb565b915061212c826120eb565b602082019050919050565b6000602082019050818103600083015261215081612114565b9050919050565b600060608201905061216c6000830186611ff4565b6121796020830185611e73565b6121866040830184611e73565b949350505050565b7f43616c6c6572206973206e6f742061206d696e74657200000000000000000000600082015250565b60006121c4601683611ccb565b91506121cf8261218e565b602082019050919050565b600060208201905081810360008301526121f3816121b7565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061223482611dd0565b915061223f83611dd0565b9250828201905080821115612257576122566121fa565b5b92915050565b60006040820190506122726000830185611ff4565b61227f6020830184611f53565b939250505056fea2646970667358221220f79f8e44abedf9347b90b261a5cfaa6ae94b91fb75bd38657d8201e5531eb7d064736f6c63430008140033