60806040523480156200001157600080fd5b5060405162005bf938038062005bf9833981810160405281019062000037919062000b80565b6040518060400160405280600e81526020017f46726565426520446f6e61746f720000000000000000000000000000000000008152506040518060400160405280600581526020017f464149544800000000000000000000000000000000000000000000000000000081525033600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603620001195760006040517f1e4fbdf700000000000000000000000000000000000000000000000000000000815260040162000110919062000c16565b60405180910390fd5b6200012a81620001df60201b60201c565b506000600360006101000a81548160ff0219169083151502179055506001600481905550620001a07fde8dab45c17849d7705adfe577ad6a43f4ad542a04e9465a4c201d5b234f12417fef338cbdc1c00143964d094fcfe366d85f3a410d9699bb97ecfd229f867877b16200022560201b60201c565b8160059081620001b1919062000e7e565b508060069081620001c3919062000e7e565b5050508060139081620001d7919062000e7e565b50506200102d565b620001f0816200028960201b60201c565b620002227fef338cbdc1c00143964d094fcfe366d85f3a410d9699bb97ecfd229f867877b1826200034d60201b60201c565b50565b60006200023883620003a460201b60201c565b90508160016000858152602001908152602001600020600101819055508181847fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff60405160405180910390a4505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60006200036083620003c460201b60201c565b11156200038d576200038b826200037f846000620003f060201b60201c565b6200042160201b60201c565b505b6200039f82826200047260201b60201c565b505050565b600060016000838152602001908152602001600020600101549050919050565b6000620003e960026000848152602001908152602001600020620004c360201b60201c565b9050919050565b6000620004198260026000868152602001908152602001600020620004e060201b90919060201c565b905092915050565b6000806200043684846200050260201b60201c565b9050801562000468576200046683600260008781526020019081526020016000206200060760201b90919060201c565b505b8091505092915050565b6000806200048784846200063f60201b60201c565b90508015620004b957620004b783600260008781526020019081526020016000206200074260201b90919060201c565b505b8091505092915050565b6000620004d9826000016200077a60201b60201c565b9050919050565b6000620004f783600001836200078b60201b60201c565b60001c905092915050565b6000620005168383620007b960201b60201c565b15620005fc5760006001600085815260200190815260200160002060000160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620005986200082460201b60201c565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16847ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a46001905062000601565b600090505b92915050565b600062000637836000018373ffffffffffffffffffffffffffffffffffffffff1660001b6200082c60201b60201c565b905092915050565b6000620006538383620007b960201b60201c565b6200073757600180600085815260200190815260200160002060000160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620006d36200082460201b60201c565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a4600190506200073c565b600090505b92915050565b600062000772836000018373ffffffffffffffffffffffffffffffffffffffff1660001b6200095060201b60201c565b905092915050565b600081600001805490509050919050565b6000826000018281548110620007a657620007a562000f65565b5b9060005260206000200154905092915050565b60006001600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b600033905090565b600080836001016000848152602001908152602001600020549050600081146200094457600060018262000861919062000fc3565b90506000600186600001805490506200087b919062000fc3565b9050808214620008f1576000866000018281548110620008a0576200089f62000f65565b5b9060005260206000200154905080876000018481548110620008c757620008c662000f65565b5b90600052602060002001819055508387600101600083815260200190815260200160002081905550505b8560000180548062000908576200090762000ffe565b5b6001900381819060005260206000200160009055905585600101600086815260200190815260200160002060009055600193505050506200094a565b60009150505b92915050565b6000620009648383620009ca60201b60201c565b620009bf578260000182908060018154018082558091505060019003906000526020600020016000909190919091505582600001805490508360010160008481526020019081526020016000208190555060019050620009c4565b600090505b92915050565b600080836001016000848152602001908152602001600020541415905092915050565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b62000a568262000a0b565b810181811067ffffffffffffffff8211171562000a785762000a7762000a1c565b5b80604052505050565b600062000a8d620009ed565b905062000a9b828262000a4b565b919050565b600067ffffffffffffffff82111562000abe5762000abd62000a1c565b5b62000ac98262000a0b565b9050602081019050919050565b60005b8381101562000af657808201518184015260208101905062000ad9565b60008484015250505050565b600062000b1962000b138462000aa0565b62000a81565b90508281526020810184848401111562000b385762000b3762000a06565b5b62000b4584828562000ad6565b509392505050565b600082601f83011262000b655762000b6462000a01565b5b815162000b7784826020860162000b02565b91505092915050565b60006020828403121562000b995762000b98620009f7565b5b600082015167ffffffffffffffff81111562000bba5762000bb9620009fc565b5b62000bc88482850162000b4d565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000bfe8262000bd1565b9050919050565b62000c108162000bf1565b82525050565b600060208201905062000c2d600083018462000c05565b92915050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168062000c8657607f821691505b60208210810362000c9c5762000c9b62000c3e565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b60006008830262000d067fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000cc7565b62000d12868362000cc7565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b600062000d5f62000d5962000d538462000d2a565b62000d34565b62000d2a565b9050919050565b6000819050919050565b62000d7b8362000d3e565b62000d9362000d8a8262000d66565b84845462000cd4565b825550505050565b600090565b62000daa62000d9b565b62000db781848462000d70565b505050565b5b8181101562000ddf5762000dd360008262000da0565b60018101905062000dbd565b5050565b601f82111562000e2e5762000df88162000ca2565b62000e038462000cb7565b8101602085101562000e13578190505b62000e2b62000e228562000cb7565b83018262000dbc565b50505b505050565b600082821c905092915050565b600062000e536000198460080262000e33565b1980831691505092915050565b600062000e6e838362000e40565b9150826002028217905092915050565b62000e898262000c33565b67ffffffffffffffff81111562000ea55762000ea462000a1c565b5b62000eb1825462000c6d565b62000ebe82828562000de3565b600060209050601f83116001811462000ef6576000841562000ee1578287015190505b62000eed858262000e60565b86555062000f5d565b601f19841662000f068662000ca2565b60005b8281101562000f305784890151825560018201915060208501945060208101905062000f09565b8683101562000f50578489015162000f4c601f89168262000e40565b8355505b6001600288020188555050505b505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600062000fd08262000d2a565b915062000fdd8362000d2a565b925082820390508181111562000ff85762000ff762000f94565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b614bbc806200103d6000396000f3fe6080604052600436106102305760003560e01c806370a082311161012e578063a9a77b77116100ab578063da1b9e081161006f578063da1b9e0814610840578063e25f841614610869578063e985e9c514610894578063f2fde38b146108d1578063f3fef3a3146108fa57610230565b8063a9a77b7714610749578063b88d4fde14610774578063c87b56dd1461079d578063ca15c873146107da578063d547741f1461081757610230565b80639010d07c116100f25780639010d07c1461065057806391d148541461068d57806395d89b41146106ca578063a217fddf146106f5578063a22cb4651461072057610230565b806370a0823114610591578063715018a6146105ce578063809f976a146105e55780638456cb591461060e5780638da5cb5b1461062557610230565b80632f2ff15d116101bc5780634f6ccce7116101805780634f6ccce71461049857806355d0ad18146104d557806355f804b3146105005780635c975abb146105295780636352211e1461055457610230565b80632f2ff15d146103c95780632f745c59146103f257806336568abe1461042f5780633f4ba83a1461045857806342842e0e1461046f57610230565b80631249c58b116102035780631249c58b14610303578063179e2ae01461030d57806318160ddd1461033857806323b872dd14610363578063248a9ca31461038c57610230565b806301ffc9a71461023557806306fdde0314610272578063081812fc1461029d578063095ea7b3146102da575b600080fd5b34801561024157600080fd5b5061025c6004803603810190610257919061383b565b610923565b6040516102699190613883565b60405180910390f35b34801561027e57600080fd5b50610287610a05565b604051610294919061392e565b60405180910390f35b3480156102a957600080fd5b506102c460048036038101906102bf9190613986565b610a97565b6040516102d191906139f4565b60405180910390f35b3480156102e657600080fd5b5061030160048036038101906102fc9190613a3b565b610ab3565b005b61030b610ac9565b005b34801561031957600080fd5b50610322610d68565b60405161032f9190613a94565b60405180910390f35b34801561034457600080fd5b5061034d610d8c565b60405161035a9190613abe565b60405180910390f35b34801561036f57600080fd5b5061038a60048036038101906103859190613ad9565b610d99565b005b34801561039857600080fd5b506103b360048036038101906103ae9190613b58565b610dd4565b6040516103c09190613a94565b60405180910390f35b3480156103d557600080fd5b506103f060048036038101906103eb9190613b85565b610df4565b005b3480156103fe57600080fd5b5061041960048036038101906104149190613a3b565b610e16565b6040516104269190613abe565b60405180910390f35b34801561043b57600080fd5b5061045660048036038101906104519190613b85565b610ebf565b005b34801561046457600080fd5b5061046d610f3a565b005b34801561047b57600080fd5b5061049660048036038101906104919190613ad9565b610f6d565b005b3480156104a457600080fd5b506104bf60048036038101906104ba9190613986565b610f8d565b6040516104cc9190613abe565b60405180910390f35b3480156104e157600080fd5b506104ea611003565b6040516104f79190613abe565b60405180910390f35b34801561050c57600080fd5b5061052760048036038101906105229190613c2a565b61100d565b005b34801561053557600080fd5b5061053e6110c5565b60405161054b9190613883565b60405180910390f35b34801561056057600080fd5b5061057b60048036038101906105769190613986565b6110dc565b60405161058891906139f4565b60405180910390f35b34801561059d57600080fd5b506105b860048036038101906105b39190613c77565b6110ee565b6040516105c59190613abe565b60405180910390f35b3480156105da57600080fd5b506105e36111a8565b005b3480156105f157600080fd5b5061060c60048036038101906106079190613d26565b6111bc565b005b34801561061a57600080fd5b506106236111f5565b005b34801561063157600080fd5b5061063a611228565b60405161064791906139f4565b60405180910390f35b34801561065c57600080fd5b5061067760048036038101906106729190613d86565b611251565b60405161068491906139f4565b60405180910390f35b34801561069957600080fd5b506106b460048036038101906106af9190613b85565b611280565b6040516106c19190613883565b60405180910390f35b3480156106d657600080fd5b506106df6112eb565b6040516106ec919061392e565b60405180910390f35b34801561070157600080fd5b5061070a61137d565b6040516107179190613a94565b60405180910390f35b34801561072c57600080fd5b5061074760048036038101906107429190613dc6565b611384565b005b34801561075557600080fd5b5061075e61139a565b60405161076b9190613a94565b60405180910390f35b34801561078057600080fd5b5061079b60048036038101906107969190613f36565b6113be565b005b3480156107a957600080fd5b506107c460048036038101906107bf9190613986565b6113db565b6040516107d1919061392e565b60405180910390f35b3480156107e657600080fd5b5061080160048036038101906107fc9190613b58565b61148d565b60405161080e9190613abe565b60405180910390f35b34801561082357600080fd5b5061083e60048036038101906108399190613b85565b6114b1565b005b34801561084c57600080fd5b5061086760048036038101906108629190613c2a565b6114d3565b005b34801561087557600080fd5b5061087e61158b565b60405161088b91906140c8565b60405180910390f35b3480156108a057600080fd5b506108bb60048036038101906108b691906140ea565b611654565b6040516108c89190613883565b60405180910390f35b3480156108dd57600080fd5b506108f860048036038101906108f39190613c77565b6116e8565b005b34801561090657600080fd5b50610921600480360381019061091c9190614168565b61176e565b005b60007f780e9d63000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806109ee57507f5a05180f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806109fe57506109fd82611977565b5b9050919050565b606060058054610a14906141d7565b80601f0160208091040260200160405190810160405280929190818152602001828054610a40906141d7565b8015610a8d5780601f10610a6257610100808354040283529160200191610a8d565b820191906000526020600020905b815481529060010190602001808311610a7057829003601f168201915b5050505050905090565b6000610aa2826119f1565b50610aac82611a79565b9050919050565b610ac58282610ac0611ab6565b611abe565b5050565b610ad1611ad0565b610ad9611b11565b6000610ae3611ab6565b9050600034905060011515601160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151503610b7d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b749061427a565b60405180910390fd5b67016345785d8a00008114610bc7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bbe9061430c565b60405180910390fd5b80600f6000828254610bd9919061435b565b925050819055506000610bea611b57565b9050610bfd610bf7611ab6565b82611b72565b610c05611b90565b506001601160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550601060405180606001604052808573ffffffffffffffffffffffffffffffffffffffff16815260200183815260200142815250908060018154018082558091505060019003906000526020600020906003020160009091909190915060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160010155604082015181600201555050808373ffffffffffffffffffffffffffffffffffffffff167f2a01595cddf097c90216094025db714da3f4e5bd8877b56ba86a24ecead8e54360405160405180910390a3505050610d66611bb9565b565b7fef338cbdc1c00143964d094fcfe366d85f3a410d9699bb97ecfd229f867877b181565b6000600d80549050905090565b6040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dcb90614401565b60405180910390fd5b600060016000838152602001908152602001600020600101549050919050565b610dfd82610dd4565b610e0681611bc3565b610e108383611bd7565b50505050565b6000610e21836110ee565b8210610e665782826040517fa57d13dc000000000000000000000000000000000000000000000000000000008152600401610e5d929190614421565b60405180910390fd5b600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002054905092915050565b610ec7611ab6565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610f2b576040517f6697b23200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610f358282611c1d565b505050565b610f637fde8dab45c17849d7705adfe577ad6a43f4ad542a04e9465a4c201d5b234f1241611bc3565b610f6b611c63565b565b610f88838383604051806020016040528060008152506113be565b505050565b6000610f97610d8c565b8210610fdd576000826040517fa57d13dc000000000000000000000000000000000000000000000000000000008152600401610fd4929190614421565b60405180910390fd5b600d8281548110610ff157610ff061444a565b5b90600052602060002001549050919050565b6000600f54905090565b6110367fde8dab45c17849d7705adfe577ad6a43f4ad542a04e9465a4c201d5b234f1241611bc3565b81816040516110469291906144a9565b6040518091039020601460405161105d919061455a565b604051809103902061106d611ab6565b73ffffffffffffffffffffffffffffffffffffffff167f930b84668ba96b03d6e845ec9a364ffe227571046d78b2b39dbdfcc96591744960405160405180910390a48181601491826110c0929190614713565b505050565b6000600360009054906101000a900460ff16905090565b60006110e7826119f1565b9050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036111615760006040517f89c62b6400000000000000000000000000000000000000000000000000000000815260040161115891906139f4565b60405180910390fd5b600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6111b0611cc6565b6111ba6000611d4d565b565b6111c4611cc6565b6111f07fde8dab45c17849d7705adfe577ad6a43f4ad542a04e9465a4c201d5b234f1241848484611d83565b505050565b61121e7fde8dab45c17849d7705adfe577ad6a43f4ad542a04e9465a4c201d5b234f1241611bc3565b611226611e26565b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60006112788260026000868152602001908152602001600020611e8990919063ffffffff16565b905092915050565b60006001600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6060600680546112fa906141d7565b80601f0160208091040260200160405190810160405280929190818152602001828054611326906141d7565b80156113735780601f1061134857610100808354040283529160200191611373565b820191906000526020600020905b81548152906001019060200180831161135657829003601f168201915b5050505050905090565b6000801b81565b61139661138f611ab6565b8383611ea3565b5050565b7fde8dab45c17849d7705adfe577ad6a43f4ad542a04e9465a4c201d5b234f124181565b6113c9848484610d99565b6113d584848484612012565b50505050565b606060006113e8836121c9565b905060008151116114835760138054611400906141d7565b80601f016020809104026020016040519081016040528092919081815260200182805461142c906141d7565b80156114795780601f1061144e57610100808354040283529160200191611479565b820191906000526020600020905b81548152906001019060200180831161145c57829003601f168201915b5050505050611485565b805b915050919050565b60006114aa60026000848152602001908152602001600020612232565b9050919050565b6114ba82610dd4565b6114c381611bc3565b6114cd8383611c1d565b50505050565b6114fc7fde8dab45c17849d7705adfe577ad6a43f4ad542a04e9465a4c201d5b234f1241611bc3565b818160405161150c9291906144a9565b60405180910390206013604051611523919061455a565b6040518091039020611533611ab6565b73ffffffffffffffffffffffffffffffffffffffff167f26761fc5e05c0c5be88c395824cf9fd196805bbad00ee34513f5233bb8e9a6a460405160405180910390a4818160139182611586929190614713565b505050565b60606010805480602002602001604051908101604052809291908181526020016000905b8282101561164b57838290600052602060002090600302016040518060600160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200160018201548152602001600282015481525050815260200190600101906115af565b50505050905090565b6000600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6116f0611cc6565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036117625760006040517f1e4fbdf700000000000000000000000000000000000000000000000000000000815260040161175991906139f4565b60405180910390fd5b61176b81611d4d565b50565b6117977fde8dab45c17849d7705adfe577ad6a43f4ad542a04e9465a4c201d5b234f1241611bc3565b61179f611b11565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361180e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161180590614855565b60405180910390fd5b60008111611851576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611848906148c1565b60405180910390fd5b60008273ffffffffffffffffffffffffffffffffffffffff168260405161187790614912565b60006040518083038185875af1925050503d80600081146118b4576040519150601f19603f3d011682016040523d82523d6000602084013e6118b9565b606091505b50509050806118fd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118f490614973565b60405180910390fd5b818373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167f3ed4ee04a905a278b050a856bbe7ddaaf327a30514373e65aa6103beeae488c3611955611ab6565b60405161196291906139f4565b60405180910390a450611973611bb9565b5050565b60007f780e9d63000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806119ea57506119e982612247565b5b9050919050565b6000806119fd83612329565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611a7057826040517f7e273289000000000000000000000000000000000000000000000000000000008152600401611a679190613abe565b60405180910390fd5b80915050919050565b60006009600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600033905090565b611acb8383836001612366565b505050565b611ad86110c5565b15611b0f576040517fd93c066500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b600260045403611b4d576040517f3ee5aeb500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6002600481905550565b60006001611b6361252b565b611b6d919061435b565b905090565b611b8c828260405180602001604052806000815250612535565b5050565b6000600160126000828254611ba5919061435b565b92505081905550611bb461252b565b905090565b6001600481905550565b611bd481611bcf611ab6565b612551565b50565b600080611be484846125a2565b90508015611c1357611c11836002600087815260200190815260200160002061269390919063ffffffff16565b505b8091505092915050565b600080611c2a84846126c3565b90508015611c5957611c5783600260008781526020019081526020016000206127b690919063ffffffff16565b505b8091505092915050565b611c6b6127e6565b6000600360006101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa611caf611ab6565b604051611cbc91906139f4565b60405180910390a1565b611cce611ab6565b73ffffffffffffffffffffffffffffffffffffffff16611cec611228565b73ffffffffffffffffffffffffffffffffffffffff1614611d4b57611d0f611ab6565b6040517f118cdaa7000000000000000000000000000000000000000000000000000000008152600401611d4291906139f4565b60405180910390fd5b565b611d5681612826565b611d807fef338cbdc1c00143964d094fcfe366d85f3a410d9699bb97ecfd229f867877b1826128ea565b50565b8015611dd2576000611d948561148d565b90505b6000811115611dd057611dbf85611dba87600185611db59190614993565b611251565b611c1d565b50611dc98561148d565b9050611d97565b505b60005b83839050811015611e1f57611e1185858584818110611df757611df661444a565b5b9050602002016020810190611e0c9190613c77565b611bd7565b508080600101915050611dd5565b5050505050565b611e2e611ad0565b6001600360006101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258611e72611ab6565b604051611e7f91906139f4565b60405180910390a1565b6000611e988360000183612920565b60001c905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611f1457816040517f5b08ba18000000000000000000000000000000000000000000000000000000008152600401611f0b91906139f4565b60405180910390fd5b80600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31836040516120059190613883565b60405180910390a3505050565b60008373ffffffffffffffffffffffffffffffffffffffff163b11156121c3578273ffffffffffffffffffffffffffffffffffffffff1663150b7a02612056611ab6565b8685856040518563ffffffff1660e01b81526004016120789493929190614a1c565b6020604051808303816000875af19250505080156120b457506040513d601f19601f820116820180604052508101906120b19190614a7d565b60015b612138573d80600081146120e4576040519150601f19603f3d011682016040523d82523d6000602084013e6120e9565b606091505b50600081510361213057836040517f64a0ae9200000000000000000000000000000000000000000000000000000000815260040161212791906139f4565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916146121c157836040517f64a0ae920000000000000000000000000000000000000000000000000000000081526004016121b891906139f4565b60405180910390fd5b505b50505050565b60606121d4826119f1565b5060006121df61294b565b905060008151116121ff576040518060200160405280600081525061222a565b80612209846129dd565b60405160200161221a929190614adb565b6040516020818303038152906040525b915050919050565b600061224082600001612aab565b9050919050565b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061231257507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80612322575061232182612abc565b5b9050919050565b60006007600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b808061239f5750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b156124d35760006123af846119f1565b9050600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561241a57508273ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614155b801561242d575061242b8184611654565b155b1561246f57826040517fa9fbf51f00000000000000000000000000000000000000000000000000000000815260040161246691906139f4565b60405180910390fd5b81156124d157838573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45b505b836009600085815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050505050565b6000601254905090565b61253f8383612b36565b61254c6000848484612012565b505050565b61255b8282611280565b61259e5780826040517fe2517d3f000000000000000000000000000000000000000000000000000000008152600401612595929190614aff565b60405180910390fd5b5050565b60006125ae8383611280565b61268857600180600085815260200190815260200160002060000160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550612625611ab6565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a46001905061268d565b600090505b92915050565b60006126bb836000018373ffffffffffffffffffffffffffffffffffffffff1660001b612c2f565b905092915050565b60006126cf8383611280565b156127ab5760006001600085815260200190815260200160002060000160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550612748611ab6565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16847ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a4600190506127b0565b600090505b92915050565b60006127de836000018373ffffffffffffffffffffffffffffffffffffffff1660001b612c9f565b905092915050565b6127ee6110c5565b612824576040517f8dfc202b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60006128f58361148d565b11156129115761290f8261290a846000611251565b611c1d565b505b61291b8282611bd7565b505050565b60008260000182815481106129385761293761444a565b5b9060005260206000200154905092915050565b60606014805461295a906141d7565b80601f0160208091040260200160405190810160405280929190818152602001828054612986906141d7565b80156129d35780601f106129a8576101008083540402835291602001916129d3565b820191906000526020600020905b8154815290600101906020018083116129b657829003601f168201915b5050505050905090565b6060600060016129ec84612db3565b01905060008167ffffffffffffffff811115612a0b57612a0a613e0b565b5b6040519080825280601f01601f191660200182016040528015612a3d5781602001600182028036833780820191505090505b509050600082602001820190505b600115612aa0578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a8581612a9457612a93614b28565b5b04945060008503612a4b575b819350505050919050565b600081600001805490509050919050565b60007f5a05180f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480612b2f5750612b2e82612f06565b5b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612ba85760006040517f64a0ae92000000000000000000000000000000000000000000000000000000008152600401612b9f91906139f4565b60405180910390fd5b6000612bb683836000612f80565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614612c2a5760006040517f73c6ac6e000000000000000000000000000000000000000000000000000000008152600401612c2191906139f4565b60405180910390fd5b505050565b6000612c3b838361309d565b612c94578260000182908060018154018082558091505060019003906000526020600020016000909190919091505582600001805490508360010160008481526020019081526020016000208190555060019050612c99565b600090505b92915050565b60008083600101600084815260200190815260200160002054905060008114612da7576000600182612cd19190614993565b9050600060018660000180549050612ce99190614993565b9050808214612d58576000866000018281548110612d0a57612d0961444a565b5b9060005260206000200154905080876000018481548110612d2e57612d2d61444a565b5b90600052602060002001819055508387600101600083815260200190815260200160002081905550505b85600001805480612d6c57612d6b614b57565b5b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050612dad565b60009150505b92915050565b600080600090507a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310612e11577a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008381612e0757612e06614b28565b5b0492506040810190505b6d04ee2d6d415b85acef81000000008310612e4e576d04ee2d6d415b85acef81000000008381612e4457612e43614b28565b5b0492506020810190505b662386f26fc100008310612e7d57662386f26fc100008381612e7357612e72614b28565b5b0492506010810190505b6305f5e1008310612ea6576305f5e1008381612e9c57612e9b614b28565b5b0492506008810190505b6127108310612ecb576127108381612ec157612ec0614b28565b5b0492506004810190505b60648310612eee5760648381612ee457612ee3614b28565b5b0492506002810190505b600a8310612efd576001810190505b80915050919050565b60007f7965db0b000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480612f795750612f78826130c0565b5b9050919050565b600080612f8e85858561312a565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603612fd257612fcd84613344565b613011565b8473ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146130105761300f818561338d565b5b5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16036130535761304e846134ee565b613092565b8473ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146130915761309085856135bf565b5b5b809150509392505050565b600080836001016000848152602001908152602001600020541415905092915050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b60008061313684612329565b9050600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16146131785761317781848661364a565b5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614613209576131ba600085600080612366565b6001600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055505b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161461328c576001600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055505b846007600086815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550838573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4809150509392505050565b600d80549050600e600083815260200190815260200160002081905550600d81908060018154018082558091505060019003906000526020600020016000909190919091505550565b6000613398836110ee565b90506000600c600084815260200190815260200160002054905081811461347d576000600b60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002054905080600b60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008481526020019081526020016000208190555081600c600083815260200190815260200160002081905550505b600c600084815260200190815260200160002060009055600b60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008381526020019081526020016000206000905550505050565b60006001600d805490506135029190614993565b90506000600e60008481526020019081526020016000205490506000600d83815481106135325761353161444a565b5b9060005260206000200154905080600d83815481106135545761355361444a565b5b906000526020600020018190555081600e600083815260200190815260200160002081905550600e600085815260200190815260200160002060009055600d8054806135a3576135a2614b57565b5b6001900381819060005260206000200160009055905550505050565b600060016135cc846110ee565b6135d69190614993565b905081600b60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008381526020019081526020016000208190555080600c600084815260200190815260200160002081905550505050565b61365583838361370e565b61370957600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036136ca57806040517f7e2732890000000000000000000000000000000000000000000000000000000081526004016136c19190613abe565b60405180910390fd5b81816040517f177e802f000000000000000000000000000000000000000000000000000000008152600401613700929190614421565b60405180910390fd5b505050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156137c657508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148061378757506137868484611654565b5b806137c557508273ffffffffffffffffffffffffffffffffffffffff166137ad83611a79565b73ffffffffffffffffffffffffffffffffffffffff16145b5b90509392505050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b613818816137e3565b811461382357600080fd5b50565b6000813590506138358161380f565b92915050565b600060208284031215613851576138506137d9565b5b600061385f84828501613826565b91505092915050565b60008115159050919050565b61387d81613868565b82525050565b60006020820190506138986000830184613874565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156138d85780820151818401526020810190506138bd565b60008484015250505050565b6000601f19601f8301169050919050565b60006139008261389e565b61390a81856138a9565b935061391a8185602086016138ba565b613923816138e4565b840191505092915050565b6000602082019050818103600083015261394881846138f5565b905092915050565b6000819050919050565b61396381613950565b811461396e57600080fd5b50565b6000813590506139808161395a565b92915050565b60006020828403121561399c5761399b6137d9565b5b60006139aa84828501613971565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006139de826139b3565b9050919050565b6139ee816139d3565b82525050565b6000602082019050613a0960008301846139e5565b92915050565b613a18816139d3565b8114613a2357600080fd5b50565b600081359050613a3581613a0f565b92915050565b60008060408385031215613a5257613a516137d9565b5b6000613a6085828601613a26565b9250506020613a7185828601613971565b9150509250929050565b6000819050919050565b613a8e81613a7b565b82525050565b6000602082019050613aa96000830184613a85565b92915050565b613ab881613950565b82525050565b6000602082019050613ad36000830184613aaf565b92915050565b600080600060608486031215613af257613af16137d9565b5b6000613b0086828701613a26565b9350506020613b1186828701613a26565b9250506040613b2286828701613971565b9150509250925092565b613b3581613a7b565b8114613b4057600080fd5b50565b600081359050613b5281613b2c565b92915050565b600060208284031215613b6e57613b6d6137d9565b5b6000613b7c84828501613b43565b91505092915050565b60008060408385031215613b9c57613b9b6137d9565b5b6000613baa85828601613b43565b9250506020613bbb85828601613a26565b9150509250929050565b600080fd5b600080fd5b600080fd5b60008083601f840112613bea57613be9613bc5565b5b8235905067ffffffffffffffff811115613c0757613c06613bca565b5b602083019150836001820283011115613c2357613c22613bcf565b5b9250929050565b60008060208385031215613c4157613c406137d9565b5b600083013567ffffffffffffffff811115613c5f57613c5e6137de565b5b613c6b85828601613bd4565b92509250509250929050565b600060208284031215613c8d57613c8c6137d9565b5b6000613c9b84828501613a26565b91505092915050565b60008083601f840112613cba57613cb9613bc5565b5b8235905067ffffffffffffffff811115613cd757613cd6613bca565b5b602083019150836020820283011115613cf357613cf2613bcf565b5b9250929050565b613d0381613868565b8114613d0e57600080fd5b50565b600081359050613d2081613cfa565b92915050565b600080600060408486031215613d3f57613d3e6137d9565b5b600084013567ffffffffffffffff811115613d5d57613d5c6137de565b5b613d6986828701613ca4565b93509350506020613d7c86828701613d11565b9150509250925092565b60008060408385031215613d9d57613d9c6137d9565b5b6000613dab85828601613b43565b9250506020613dbc85828601613971565b9150509250929050565b60008060408385031215613ddd57613ddc6137d9565b5b6000613deb85828601613a26565b9250506020613dfc85828601613d11565b9150509250929050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b613e43826138e4565b810181811067ffffffffffffffff82111715613e6257613e61613e0b565b5b80604052505050565b6000613e756137cf565b9050613e818282613e3a565b919050565b600067ffffffffffffffff821115613ea157613ea0613e0b565b5b613eaa826138e4565b9050602081019050919050565b82818337600083830152505050565b6000613ed9613ed484613e86565b613e6b565b905082815260208101848484011115613ef557613ef4613e06565b5b613f00848285613eb7565b509392505050565b600082601f830112613f1d57613f1c613bc5565b5b8135613f2d848260208601613ec6565b91505092915050565b60008060008060808587031215613f5057613f4f6137d9565b5b6000613f5e87828801613a26565b9450506020613f6f87828801613a26565b9350506040613f8087828801613971565b925050606085013567ffffffffffffffff811115613fa157613fa06137de565b5b613fad87828801613f08565b91505092959194509250565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b613fee816139d3565b82525050565b613ffd81613950565b82525050565b6060820160008201516140196000850182613fe5565b50602082015161402c6020850182613ff4565b50604082015161403f6040850182613ff4565b50505050565b60006140518383614003565b60608301905092915050565b6000602082019050919050565b600061407582613fb9565b61407f8185613fc4565b935061408a83613fd5565b8060005b838110156140bb5781516140a28882614045565b97506140ad8361405d565b92505060018101905061408e565b5085935050505092915050565b600060208201905081810360008301526140e2818461406a565b905092915050565b60008060408385031215614101576141006137d9565b5b600061410f85828601613a26565b925050602061412085828601613a26565b9150509250929050565b6000614135826139b3565b9050919050565b6141458161412a565b811461415057600080fd5b50565b6000813590506141628161413c565b92915050565b6000806040838503121561417f5761417e6137d9565b5b600061418d85828601614153565b925050602061419e85828601613971565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806141ef57607f821691505b602082108103614202576142016141a8565b5b50919050565b7f596f75206861766520646f6e617465642e205468616e6b20796f75206167616960008201527f6e21203a2d440000000000000000000000000000000000000000000000000000602082015250565b60006142646026836138a9565b915061426f82614208565b604082019050919050565b6000602082019050818103600083015261429381614257565b9050919050565b7f54686520646f6e6174696f6e20616d6f756e74206973206c696d69746564207460008201527f6f20302e31204554482e00000000000000000000000000000000000000000000602082015250565b60006142f6602a836138a9565b91506143018261429a565b604082019050919050565b60006020820190508181036000830152614325816142e9565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061436682613950565b915061437183613950565b92508282019050808211156143895761438861432c565b5b92915050565b7f46726565426520446f6e61746f7220746f6b656e2063616e277420626520747260008201527f616e7366657265642e0000000000000000000000000000000000000000000000602082015250565b60006143eb6029836138a9565b91506143f68261438f565b604082019050919050565b6000602082019050818103600083015261441a816143de565b9050919050565b600060408201905061443660008301856139e5565b6144436020830184613aaf565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081905092915050565b60006144908385614479565b935061449d838584613eb7565b82840190509392505050565b60006144b6828486614484565b91508190509392505050565b60008190508160005260206000209050919050565b600081546144e4816141d7565b6144ee8186614479565b94506001821660008114614509576001811461451e57614551565b60ff1983168652811515820286019350614551565b614527856144c2565b60005b838110156145495781548189015260018201915060208101905061452a565b838801955050505b50505092915050565b600061456682846144d7565b915081905092915050565b600082905092915050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026145c97fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8261458c565b6145d3868361458c565b95508019841693508086168417925050509392505050565b6000819050919050565b600061461061460b61460684613950565b6145eb565b613950565b9050919050565b6000819050919050565b61462a836145f5565b61463e61463682614617565b848454614599565b825550505050565b600090565b614653614646565b61465e818484614621565b505050565b5b818110156146825761467760008261464b565b600181019050614664565b5050565b601f8211156146c757614698816144c2565b6146a18461457c565b810160208510156146b0578190505b6146c46146bc8561457c565b830182614663565b50505b505050565b600082821c905092915050565b60006146ea600019846008026146cc565b1980831691505092915050565b600061470383836146d9565b9150826002028217905092915050565b61471d8383614571565b67ffffffffffffffff81111561473657614735613e0b565b5b61474082546141d7565b61474b828285614686565b6000601f83116001811461477a5760008415614768578287013590505b61477285826146f7565b8655506147da565b601f198416614788866144c2565b60005b828110156147b05784890135825560018201915060208501945060208101905061478b565b868310156147cd57848901356147c9601f8916826146d9565b8355505b6001600288020188555050505b50505050505050565b7f5265636569766572206d757374206e6f7420626520746865207a65726f20616460008201527f64726573732e0000000000000000000000000000000000000000000000000000602082015250565b600061483f6026836138a9565b915061484a826147e3565b604082019050919050565b6000602082019050818103600083015261486e81614832565b9050919050565b7f416d6f756e74206d7573742062652067726561746572207468616e20302e0000600082015250565b60006148ab601e836138a9565b91506148b682614875565b602082019050919050565b600060208201905081810360008301526148da8161489e565b9050919050565b600081905092915050565b50565b60006148fc6000836148e1565b9150614907826148ec565b600082019050919050565b600061491d826148ef565b9150819050919050565b7f5769746864726177206661696c65642e00000000000000000000000000000000600082015250565b600061495d6010836138a9565b915061496882614927565b602082019050919050565b6000602082019050818103600083015261498c81614950565b9050919050565b600061499e82613950565b91506149a983613950565b92508282039050818111156149c1576149c061432c565b5b92915050565b600081519050919050565b600082825260208201905092915050565b60006149ee826149c7565b6149f881856149d2565b9350614a088185602086016138ba565b614a11816138e4565b840191505092915050565b6000608082019050614a3160008301876139e5565b614a3e60208301866139e5565b614a4b6040830185613aaf565b8181036060830152614a5d81846149e3565b905095945050505050565b600081519050614a778161380f565b92915050565b600060208284031215614a9357614a926137d9565b5b6000614aa184828501614a68565b91505092915050565b6000614ab58261389e565b614abf8185614479565b9350614acf8185602086016138ba565b80840191505092915050565b6000614ae78285614aaa565b9150614af38284614aaa565b91508190509392505050565b6000604082019050614b1460008301856139e5565b614b216020830184613a85565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfea264697066735822122001f5bcdbb4c36c64d0eed5b98d44bd6f88ef59b2cf5f042fb2c873dff7f5374564736f6c6343000818003300000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000