0x608060405234801561001057600080fd5b50600436106100f55760003560e01c8063715018a611610097578063a9059cbb11610066578063a9059cbb14610266578063dd62ed3e14610296578063ea414b28146102c6578063f2fde38b146102e2576100f5565b8063715018a61461020257806372685eab1461020c5780638da5cb5b1461022a57806395d89b4114610248576100f5565b806323b872dd116100d357806323b872dd146101665780632dc0562d14610196578063313ce567146101b457806370a08231146101d2576100f5565b806306fdde03146100fa578063095ea7b31461011857806318160ddd14610148575b600080fd5b6101026102fe565b60405161010f9190611276565b60405180910390f35b610132600480360381019061012d9190611331565b61038c565b60405161013f919061138c565b60405180910390f35b61015061047e565b60405161015d91906113b6565b60405180910390f35b610180600480360381019061017b91906113d1565b61048e565b60405161018d919061138c565b60405180910390f35b61019e610a15565b6040516101ab9190611433565b60405180910390f35b6101bc610a3b565b6040516101c9919061146a565b60405180910390f35b6101ec60048036038101906101e79190611485565b610a40565b6040516101f991906113b6565b60405180910390f35b61020a610a89565b005b610214610a9d565b60405161022191906113b6565b60405180910390f35b610232610aa2565b60405161023f9190611433565b60405180910390f35b610250610acc565b60405161025d9190611276565b60405180910390f35b610280600480360381019061027b9190611331565b610b5a565b60405161028d919061138c565b60405180910390f35b6102b060048036038101906102ab91906114b2565b610f0e565b6040516102bd91906113b6565b60405180910390f35b6102e060048036038101906102db9190611485565b610f95565b005b6102fc60048036038101906102f79190611485565b610fe1565b005b6000805461030b90611521565b80601f016020809104026020016040519081016040528092919081815260200182805461033790611521565b80156103845780601f1061035957610100808354040283529160200191610384565b820191906000526020600020905b81548152906001019060200180831161036757829003601f168201915b505050505081565b600081600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161046c91906113b6565b60405180910390a36001905092915050565b6bdef376571332906a8800000081565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361050057826040517f01cc0e810000000000000000000000000000000000000000000000000000000081526004016104f79190611433565b60405180910390fd5b600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211156105c557600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054826040517fcf4791810000000000000000000000000000000000000000000000000000000081526004016105bc929190611552565b60405180910390fd5b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111561070457600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054826040517f2a1b2dd80000000000000000000000000000000000000000000000000000000081526004016106fb929190611552565b60405180910390fd5b60008061076184600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff1614611066565b9150915083600360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546107b491906115aa565b925050819055508160036000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461082c91906115de565b9250508190555083600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546108bf91906115aa565b9250508190555080600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461091591906115de565b925050819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161097991906113b6565b60405180910390a3600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610a0091906113b6565b60405180910390a36001925050509392505050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b601281565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610a916110a7565b610a9b6000611120565b565b60a981565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60018054610ad990611521565b80601f0160208091040260200160405190810160405280929190818152602001828054610b0590611521565b8015610b525780601f10610b2757610100808354040283529160200191610b52565b820191906000526020600020905b815481529060010190602001808311610b3557829003601f168201915b505050505081565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610bcc57826040517f01cc0e81000000000000000000000000000000000000000000000000000000008152600401610bc39190611433565b60405180910390fd5b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115610c9157600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054826040517fcf479181000000000000000000000000000000000000000000000000000000008152600401610c88929190611552565b60405180910390fd5b600080610cee84600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611066565b9150915083600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610d4191906115aa565b925050819055508160036000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610db991906115de565b9250508190555080600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610e0f91906115de565b925050819055508473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610e7391906113b6565b60405180910390a3600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610efa91906113b6565b60405180910390a360019250505092915050565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610f9d6110a7565b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b610fe96110a7565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361105a57806040517f01cc0e810000000000000000000000000000000000000000000000000000000081526004016110519190611433565b60405180910390fd5b61106381611120565b50565b6000808261108d5761271060a98561107e9190611612565b6110889190611683565b611090565b60005b9150818461109e91906115aa565b90509250929050565b3373ffffffffffffffffffffffffffffffffffffffff166110c6610aa2565b73ffffffffffffffffffffffffffffffffffffffff161461111e57336040517fa815108e0000000000000000000000000000000000000000000000000000000081526004016111159190611433565b60405180910390fd5b565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611220578082015181840152602081019050611205565b60008484015250505050565b6000601f19601f8301169050919050565b6000611248826111e6565b61125281856111f1565b9350611262818560208601611202565b61126b8161122c565b840191505092915050565b60006020820190508181036000830152611290818461123d565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006112c88261129d565b9050919050565b6112d8816112bd565b81146112e357600080fd5b50565b6000813590506112f5816112cf565b92915050565b6000819050919050565b61130e816112fb565b811461131957600080fd5b50565b60008135905061132b81611305565b92915050565b6000806040838503121561134857611347611298565b5b6000611356858286016112e6565b92505060206113678582860161131c565b9150509250929050565b60008115159050919050565b61138681611371565b82525050565b60006020820190506113a1600083018461137d565b92915050565b6113b0816112fb565b82525050565b60006020820190506113cb60008301846113a7565b92915050565b6000806000606084860312156113ea576113e9611298565b5b60006113f8868287016112e6565b9350506020611409868287016112e6565b925050604061141a8682870161131c565b9150509250925092565b61142d816112bd565b82525050565b60006020820190506114486000830184611424565b92915050565b600060ff82169050919050565b6114648161144e565b82525050565b600060208201905061147f600083018461145b565b92915050565b60006020828403121561149b5761149a611298565b5b60006114a9848285016112e6565b91505092915050565b600080604083850312156114c9576114c8611298565b5b60006114d7858286016112e6565b92505060206114e8858286016112e6565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061153957607f821691505b60208210810361154c5761154b6114f2565b5b50919050565b600060408201905061156760008301856113a7565b61157460208301846113a7565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006115b5826112fb565b91506115c0836112fb565b92508282039050818111156115d8576115d761157b565b5b92915050565b60006115e9826112fb565b91506115f4836112fb565b925082820190508082111561160c5761160b61157b565b5b92915050565b600061161d826112fb565b9150611628836112fb565b9250828202611636816112fb565b9150828204841483151761164d5761164c61157b565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061168e826112fb565b9150611699836112fb565b9250826116a9576116a8611654565b5b82820490509291505056fea2646970667358221220b505bfb76a01a6da12b7f312b4ae7fcab70fc0d60af26be25b4d1688a3033b3e64736f6c63430008120033
0x60806040526040518060400160405280600a81526020017f436f62726120436f696e00000000000000000000000000000000000000000000815250600090816200004a919062000510565b506040518060400160405280600581526020017f434f4252410000000000000000000000000000000000000000000000000000008152506001908162000091919062000510565b5073d81895407b375389dc5e4e5d0cfec65c1bd9dab3600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550348015620000f457600080fd5b506200010633620001d060201b60201c565b6bdef376571332906a88000000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6bdef376571332906a88000000604051620001c2919062000608565b60405180910390a362000625565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200031857607f821691505b6020821081036200032e576200032d620002d0565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620003987fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000359565b620003a4868362000359565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620003f1620003eb620003e584620003bc565b620003c6565b620003bc565b9050919050565b6000819050919050565b6200040d83620003d0565b620004256200041c82620003f8565b84845462000366565b825550505050565b600090565b6200043c6200042d565b6200044981848462000402565b505050565b5b8181101562000471576200046560008262000432565b6001810190506200044f565b5050565b601f821115620004c0576200048a8162000334565b620004958462000349565b81016020851015620004a5578190505b620004bd620004b48562000349565b8301826200044e565b50505b505050565b600082821c905092915050565b6000620004e560001984600802620004c5565b1980831691505092915050565b6000620005008383620004d2565b9150826002028217905092915050565b6200051b8262000296565b67ffffffffffffffff811115620005375762000536620002a1565b5b620005438254620002ff565b6200055082828562000475565b600060209050601f83116001811462000588576000841562000573578287015190505b6200057f8582620004f2565b865550620005ef565b601f198416620005988662000334565b60005b82811015620005c2578489015182556001820191506020850194506020810190506200059b565b86831015620005e25784890151620005de601f891682620004d2565b8355505b6001600288020188555050505b505050505050565b6200060281620003bc565b82525050565b60006020820190506200061f6000830184620005f7565b92915050565b6116ea80620006356000396000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c8063715018a611610097578063a9059cbb11610066578063a9059cbb14610266578063dd62ed3e14610296578063ea414b28146102c6578063f2fde38b146102e2576100f5565b8063715018a61461020257806372685eab1461020c5780638da5cb5b1461022a57806395d89b4114610248576100f5565b806323b872dd116100d357806323b872dd146101665780632dc0562d14610196578063313ce567146101b457806370a08231146101d2576100f5565b806306fdde03146100fa578063095ea7b31461011857806318160ddd14610148575b600080fd5b6101026102fe565b60405161010f9190611276565b60405180910390f35b610132600480360381019061012d9190611331565b61038c565b60405161013f919061138c565b60405180910390f35b61015061047e565b60405161015d91906113b6565b60405180910390f35b610180600480360381019061017b91906113d1565b61048e565b60405161018d919061138c565b60405180910390f35b61019e610a15565b6040516101ab9190611433565b60405180910390f35b6101bc610a3b565b6040516101c9919061146a565b60405180910390f35b6101ec60048036038101906101e79190611485565b610a40565b6040516101f991906113b6565b60405180910390f35b61020a610a89565b005b610214610a9d565b60405161022191906113b6565b60405180910390f35b610232610aa2565b60405161023f9190611433565b60405180910390f35b610250610acc565b60405161025d9190611276565b60405180910390f35b610280600480360381019061027b9190611331565b610b5a565b60405161028d919061138c565b60405180910390f35b6102b060048036038101906102ab91906114b2565b610f0e565b6040516102bd91906113b6565b60405180910390f35b6102e060048036038101906102db9190611485565b610f95565b005b6102fc60048036038101906102f79190611485565b610fe1565b005b6000805461030b90611521565b80601f016020809104026020016040519081016040528092919081815260200182805461033790611521565b80156103845780601f1061035957610100808354040283529160200191610384565b820191906000526020600020905b81548152906001019060200180831161036757829003601f168201915b505050505081565b600081600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161046c91906113b6565b60405180910390a36001905092915050565b6bdef376571332906a8800000081565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361050057826040517f01cc0e810000000000000000000000000000000000000000000000000000000081526004016104f79190611433565b60405180910390fd5b600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211156105c557600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054826040517fcf4791810000000000000000000000000000000000000000000000000000000081526004016105bc929190611552565b60405180910390fd5b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111561070457600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054826040517f2a1b2dd80000000000000000000000000000000000000000000000000000000081526004016106fb929190611552565b60405180910390fd5b60008061076184600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff1614611066565b9150915083600360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546107b491906115aa565b925050819055508160036000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461082c91906115de565b9250508190555083600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546108bf91906115aa565b9250508190555080600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461091591906115de565b925050819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161097991906113b6565b60405180910390a3600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610a0091906113b6565b60405180910390a36001925050509392505050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b601281565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610a916110a7565b610a9b6000611120565b565b60a981565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60018054610ad990611521565b80601f0160208091040260200160405190810160405280929190818152602001828054610b0590611521565b8015610b525780601f10610b2757610100808354040283529160200191610b52565b820191906000526020600020905b815481529060010190602001808311610b3557829003601f168201915b505050505081565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610bcc57826040517f01cc0e81000000000000000000000000000000000000000000000000000000008152600401610bc39190611433565b60405180910390fd5b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115610c9157600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054826040517fcf479181000000000000000000000000000000000000000000000000000000008152600401610c88929190611552565b60405180910390fd5b600080610cee84600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611066565b9150915083600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610d4191906115aa565b925050819055508160036000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610db991906115de565b9250508190555080600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610e0f91906115de565b925050819055508473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610e7391906113b6565b60405180910390a3600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610efa91906113b6565b60405180910390a360019250505092915050565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610f9d6110a7565b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b610fe96110a7565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361105a57806040517f01cc0e810000000000000000000000000000000000000000000000000000000081526004016110519190611433565b60405180910390fd5b61106381611120565b50565b6000808261108d5761271060a98561107e9190611612565b6110889190611683565b611090565b60005b9150818461109e91906115aa565b90509250929050565b3373ffffffffffffffffffffffffffffffffffffffff166110c6610aa2565b73ffffffffffffffffffffffffffffffffffffffff161461111e57336040517fa815108e0000000000000000000000000000000000000000000000000000000081526004016111159190611433565b60405180910390fd5b565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611220578082015181840152602081019050611205565b60008484015250505050565b6000601f19601f8301169050919050565b6000611248826111e6565b61125281856111f1565b9350611262818560208601611202565b61126b8161122c565b840191505092915050565b60006020820190508181036000830152611290818461123d565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006112c88261129d565b9050919050565b6112d8816112bd565b81146112e357600080fd5b50565b6000813590506112f5816112cf565b92915050565b6000819050919050565b61130e816112fb565b811461131957600080fd5b50565b60008135905061132b81611305565b92915050565b6000806040838503121561134857611347611298565b5b6000611356858286016112e6565b92505060206113678582860161131c565b9150509250929050565b60008115159050919050565b61138681611371565b82525050565b60006020820190506113a1600083018461137d565b92915050565b6113b0816112fb565b82525050565b60006020820190506113cb60008301846113a7565b92915050565b6000806000606084860312156113ea576113e9611298565b5b60006113f8868287016112e6565b9350506020611409868287016112e6565b925050604061141a8682870161131c565b9150509250925092565b61142d816112bd565b82525050565b60006020820190506114486000830184611424565b92915050565b600060ff82169050919050565b6114648161144e565b82525050565b600060208201905061147f600083018461145b565b92915050565b60006020828403121561149b5761149a611298565b5b60006114a9848285016112e6565b91505092915050565b600080604083850312156114c9576114c8611298565b5b60006114d7858286016112e6565b92505060206114e8858286016112e6565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061153957607f821691505b60208210810361154c5761154b6114f2565b5b50919050565b600060408201905061156760008301856113a7565b61157460208301846113a7565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006115b5826112fb565b91506115c0836112fb565b92508282039050818111156115d8576115d761157b565b5b92915050565b60006115e9826112fb565b91506115f4836112fb565b925082820190508082111561160c5761160b61157b565b5b92915050565b600061161d826112fb565b9150611628836112fb565b9250828202611636816112fb565b9150828204841483151761164d5761164c61157b565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061168e826112fb565b9150611699836112fb565b9250826116a9576116a8611654565b5b82820490509291505056fea2646970667358221220b505bfb76a01a6da12b7f312b4ae7fcab70fc0d60af26be25b4d1688a3033b3e64736f6c63430008120033