60c06040526040518060400160405280600881526020017f444f474536393030000000000000000000000000000000000000000000000000815250600190816200004a919062000e61565b506040518060400160405280600881526020017f444f4745363930300000000000000000000000000000000000000000000000008152506002908162000091919062000e61565b506012600360006101000a81548160ff021916908360ff16021790555033600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507341d7b3eed52c10058a041f9e99f0555ae0f03e36600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600073ffffffffffffffffffffffffffffffffffffffff1660809073ffffffffffffffffffffffffffffffffffffffff1681525061dead73ffffffffffffffffffffffffffffffffffffffff1660a09073ffffffffffffffffffffffffffffffffffffffff168152506000600d556000600e556000600f556000601055600060115560006012556001601355600360009054906101000a900460ff16600a620001ee9190620010d8565b633b9aca00620001ff919062001129565b6016556200023061271062000221600560165462000a1660201b90919060201c565b62000a9960201b90919060201c565b601755620002616103e862000252602360165462000a1660201b90919060201c565b62000a9960201b90919060201c565b601855620002926103e862000283602360165462000a1660201b90919060201c565b62000a9960201b90919060201c565b6019556001601b60156101000a81548160ff0219169083151502179055506000601b60166101000a81548160ff0219169083151502179055506001601b60176101000a81548160ff0219169083151502179055506001601b60186101000a81548160ff0219169083151502179055503480156200030e57600080fd5b5060006200032162000aeb60201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3506001600b6000620003d562000af360201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600b6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600b60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600960003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160096000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160096000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160096000620006d462000af360201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600c6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600c6000620007b562000af360201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600c6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600c60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555062000907600f54620008f8600e54600d5462000b1c60201b90919060201c565b62000b1c60201b90919060201c565b6014819055506200093c6012546200092d60115460105462000b1c60201b90919060201c565b62000b1c60201b90919060201c565b601581905550601654600660006200095962000aeb60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550620009a762000aeb60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60165460405162000a08919062001185565b60405180910390a362001401565b600080830362000a2a576000905062000a93565b6000828462000a3a919062001129565b905082848262000a4b9190620011d1565b1462000a8e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000a859062001290565b60405180910390fd5b809150505b92915050565b600062000ae383836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525062000b7f60201b60201c565b905092915050565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600080828462000b2d9190620012b2565b90508381101562000b75576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000b6c906200133d565b60405180910390fd5b8091505092915050565b6000808311829062000bc9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000bc09190620013dd565b60405180910390fd5b506000838562000bda9190620011d1565b9050809150509392505050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168062000c6957607f821691505b60208210810362000c7f5762000c7e62000c21565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b60006008830262000ce97fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000caa565b62000cf5868362000caa565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b600062000d4262000d3c62000d368462000d0d565b62000d17565b62000d0d565b9050919050565b6000819050919050565b62000d5e8362000d21565b62000d7662000d6d8262000d49565b84845462000cb7565b825550505050565b600090565b62000d8d62000d7e565b62000d9a81848462000d53565b505050565b5b8181101562000dc25762000db660008262000d83565b60018101905062000da0565b5050565b601f82111562000e115762000ddb8162000c85565b62000de68462000c9a565b8101602085101562000df6578190505b62000e0e62000e058562000c9a565b83018262000d9f565b50505b505050565b600082821c905092915050565b600062000e366000198460080262000e16565b1980831691505092915050565b600062000e51838362000e23565b9150826002028217905092915050565b62000e6c8262000be7565b67ffffffffffffffff81111562000e885762000e8762000bf2565b5b62000e94825462000c50565b62000ea182828562000dc6565b600060209050601f83116001811462000ed9576000841562000ec4578287015190505b62000ed0858262000e43565b86555062000f40565b601f19841662000ee98662000c85565b60005b8281101562000f135784890151825560018201915060208501945060208101905062000eec565b8683101562000f33578489015162000f2f601f89168262000e23565b8355505b6001600288020188555050505b505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b600185111562000fd65780860481111562000fae5762000fad62000f48565b5b600185161562000fbe5780820291505b808102905062000fce8562000f77565b945062000f8e565b94509492505050565b60008262000ff15760019050620010c4565b81620010015760009050620010c4565b81600181146200101a576002811462001025576200105b565b6001915050620010c4565b60ff8411156200103a576200103962000f48565b5b8360020a91508482111562001054576200105362000f48565b5b50620010c4565b5060208310610133831016604e8410600b8410161715620010955782820a9050838111156200108f576200108e62000f48565b5b620010c4565b620010a4848484600162000f84565b92509050818404811115620010be57620010bd62000f48565b5b81810290505b9392505050565b600060ff82169050919050565b6000620010e58262000d0d565b9150620010f283620010cb565b9250620011217fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000fdf565b905092915050565b6000620011368262000d0d565b9150620011438362000d0d565b9250828202620011538162000d0d565b915082820484148315176200116d576200116c62000f48565b5b5092915050565b6200117f8162000d0d565b82525050565b60006020820190506200119c600083018462001174565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000620011de8262000d0d565b9150620011eb8362000d0d565b925082620011fe57620011fd620011a2565b5b828204905092915050565b600082825260208201905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b60006200127860218362001209565b915062001285826200121a565b604082019050919050565b60006020820190508181036000830152620012ab8162001269565b9050919050565b6000620012bf8262000d0d565b9150620012cc8362000d0d565b9250828201905080821115620012e757620012e662000f48565b5b92915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b600062001325601b8362001209565b91506200133282620012ed565b602082019050919050565b60006020820190508181036000830152620013588162001316565b9050919050565b60005b838110156200137f57808201518184015260208101905062001362565b60008484015250505050565b6000601f19601f8301169050919050565b6000620013a98262000be7565b620013b5818562001209565b9350620013c78185602086016200135f565b620013d2816200138b565b840191505092915050565b60006020820190508181036000830152620013f981846200139c565b905092915050565b60805160a05161425f6200143560003960008181610c940152610cec015260008181610b420152610cc0015261425f6000f3fe6080604052600436106102815760003560e01c806388790a681161014f578063c8607952116100c1578063f0cd1dac1161007a578063f0cd1dac1461099c578063f2fde38b146109c7578063f680f799146109f0578063f872858a14610a1b578063fb45af2314610a46578063ffae9c5014610a8357610288565b8063c8607952146108bd578063c9567bf9146108e8578063da00097d146108ff578063dc44b6a01461092a578063dd62ed3e14610955578063ed39257a1461099257610288565b806398e944c81161011357806398e944c814610797578063a457c2d7146107c2578063a7251ef6146107ff578063a8b089821461082a578063a9059cbb14610855578063c5d241891461089257610288565b806388790a68146106ae57806389a4c1a0146106d95780638b42507f146107045780638da5cb5b1461074157806395d89b411461076c57610288565b80633ecad271116101f357806370a08231116101ac57806370a08231146105c2578063715018a6146105ff578063751039fc146106165780637d1db4a51461062d57806382eefb4314610658578063852614851461068357610288565b80633ecad2711461049c5780634a74bb02146104d95780634ada218b146105045780634fbee1931461052f5780635194f9bf1461056c5780636c0a24eb1461059757610288565b806323555d571161024557806323555d571461037657806323b872dd146103a157806327c8f835146103de5780632b112e4914610409578063313ce56714610434578063395093511461045f57610288565b806306fdde031461028d5780630930907b146102b8578063095ea7b3146102e35780631694505e1461032057806318160ddd1461034b57610288565b3661028857005b600080fd5b34801561029957600080fd5b506102a2610aae565b6040516102af9190613428565b60405180910390f35b3480156102c457600080fd5b506102cd610b40565b6040516102da919061348b565b60405180910390f35b3480156102ef57600080fd5b5061030a6004803603810190610305919061350d565b610b64565b6040516103179190613568565b60405180910390f35b34801561032c57600080fd5b50610335610b82565b60405161034291906135e2565b60405180910390f35b34801561035757600080fd5b50610360610ba8565b60405161036d919061360c565b60405180910390f35b34801561038257600080fd5b5061038b610bb2565b604051610398919061360c565b60405180910390f35b3480156103ad57600080fd5b506103c860048036038101906103c39190613627565b610bb8565b6040516103d59190613568565b60405180910390f35b3480156103ea57600080fd5b506103f3610c92565b604051610400919061348b565b60405180910390f35b34801561041557600080fd5b5061041e610cb6565b60405161042b919061360c565b60405180910390f35b34801561044057600080fd5b50610449610d34565b6040516104569190613696565b60405180910390f35b34801561046b57600080fd5b506104866004803603810190610481919061350d565b610d4b565b6040516104939190613568565b60405180910390f35b3480156104a857600080fd5b506104c360048036038101906104be91906136b1565b610dfe565b6040516104d09190613568565b60405180910390f35b3480156104e557600080fd5b506104ee610e1e565b6040516104fb9190613568565b60405180910390f35b34801561051057600080fd5b50610519610e31565b6040516105269190613568565b60405180910390f35b34801561053b57600080fd5b50610556600480360381019061055191906136b1565b610e44565b6040516105639190613568565b60405180910390f35b34801561057857600080fd5b50610581610e64565b60405161058e919061360c565b60405180910390f35b3480156105a357600080fd5b506105ac610e6a565b6040516105b9919061360c565b60405180910390f35b3480156105ce57600080fd5b506105e960048036038101906105e491906136b1565b610e70565b6040516105f6919061360c565b60405180910390f35b34801561060b57600080fd5b50610614610eb9565b005b34801561062257600080fd5b5061062b61100e565b005b34801561063957600080fd5b506106426110b7565b60405161064f919061360c565b60405180910390f35b34801561066457600080fd5b5061066d6110bd565b60405161067a919061360c565b60405180910390f35b34801561068f57600080fd5b506106986110c3565b6040516106a59190613568565b60405180910390f35b3480156106ba57600080fd5b506106c36110d6565b6040516106d0919061360c565b60405180910390f35b3480156106e557600080fd5b506106ee6110dc565b6040516106fb91906136ff565b60405180910390f35b34801561071057600080fd5b5061072b600480360381019061072691906136b1565b611102565b6040516107389190613568565b60405180910390f35b34801561074d57600080fd5b50610756611122565b604051610763919061348b565b60405180910390f35b34801561077857600080fd5b5061078161114b565b60405161078e9190613428565b60405180910390f35b3480156107a357600080fd5b506107ac6111dd565b6040516107b9919061348b565b60405180910390f35b3480156107ce57600080fd5b506107e960048036038101906107e4919061350d565b611203565b6040516107f69190613568565b60405180910390f35b34801561080b57600080fd5b506108146112d0565b604051610821919061360c565b60405180910390f35b34801561083657600080fd5b5061083f6112d6565b60405161084c919061348b565b60405180910390f35b34801561086157600080fd5b5061087c6004803603810190610877919061350d565b6112fc565b6040516108899190613568565b60405180910390f35b34801561089e57600080fd5b506108a761131b565b6040516108b4919061360c565b60405180910390f35b3480156108c957600080fd5b506108d2611321565b6040516108df919061360c565b60405180910390f35b3480156108f457600080fd5b506108fd611327565b005b34801561090b57600080fd5b506109146113d9565b6040516109219190613568565b60405180910390f35b34801561093657600080fd5b5061093f6113ec565b60405161094c919061360c565b60405180910390f35b34801561096157600080fd5b5061097c6004803603810190610977919061371a565b6113f2565b604051610989919061360c565b60405180910390f35b61099a611479565b005b3480156109a857600080fd5b506109b1611a0e565b6040516109be919061360c565b60405180910390f35b3480156109d357600080fd5b506109ee60048036038101906109e991906136b1565b611a14565b005b3480156109fc57600080fd5b50610a05611bd5565b604051610a12919061360c565b60405180910390f35b348015610a2757600080fd5b50610a30611bdb565b604051610a3d9190613568565b60405180910390f35b348015610a5257600080fd5b50610a6d6004803603810190610a6891906136b1565b611bee565b604051610a7a9190613568565b60405180910390f35b348015610a8f57600080fd5b50610a98611c0e565b604051610aa591906136ff565b60405180910390f35b606060018054610abd90613789565b80601f0160208091040260200160405190810160405280929190818152602001828054610ae990613789565b8015610b365780601f10610b0b57610100808354040283529160200191610b36565b820191906000526020600020905b815481529060010190602001808311610b1957829003601f168201915b5050505050905090565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000610b78610b71611c34565b8484611c3c565b6001905092915050565b601a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000601654905090565b600f5481565b6000610bc5848484611e05565b50610c8784610bd2611c34565b610c82856040518060600160405280602881526020016141dd60289139600760008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610c38611c34565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546125d79092919063ffffffff16565b611c3c565b600190509392505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000610d2f610ce47f0000000000000000000000000000000000000000000000000000000000000000610e70565b610d21610d107f0000000000000000000000000000000000000000000000000000000000000000610e70565b60165461263b90919063ffffffff16565b61263b90919063ffffffff16565b905090565b6000600360009054906101000a900460ff16905090565b6000610df4610d58611c34565b84610def8560076000610d69611c34565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461268590919063ffffffff16565b611c3c565b6001905092915050565b600a6020528060005260406000206000915054906101000a900460ff1681565b601b60159054906101000a900460ff1681565b600860009054906101000a900460ff1681565b60096020528060005260406000206000915054906101000a900460ff1681565b60125481565b60195481565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610ec1611c34565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f4e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f4590613806565b60405180910390fd5b61dead73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a361dead6000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b611016611c34565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146110a3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161109a90613806565b60405180910390fd5b601654601881905550601654601981905550565b60185481565b60155481565b601b60189054906101000a900460ff1681565b60105481565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600c6020528060005260406000206000915054906101000a900460ff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606002805461115a90613789565b80601f016020809104026020016040519081016040528092919081815260200182805461118690613789565b80156111d35780601f106111a8576101008083540402835291602001916111d3565b820191906000526020600020905b8154815290600101906020018083116111b657829003601f168201915b5050505050905090565b600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006112c6611210611c34565b846112c185604051806060016040528060258152602001614205602591396007600061123a611c34565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546125d79092919063ffffffff16565b611c3c565b6001905092915050565b60175481565b601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000611310611309611c34565b8484611e05565b506001905092915050565b600e5481565b60115481565b61132f611c34565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146113bc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113b390613806565b60405180910390fd5b6001600860006101000a81548160ff021916908315150217905550565b601b60169054906101000a900460ff1681565b600d5481565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b611481611c34565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461150e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161150590613806565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d90508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015611572573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611596919061383b565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156115fd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611621919061383b565b6040518363ffffffff1660e01b815260040161163e929190613868565b6020604051808303816000875af115801561165d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611681919061383b565b601b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080601a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600019600760003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001600a6000601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600b6000601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600c6000601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555033600360016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550601a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d719343061199f30610e70565b60008033426040518863ffffffff1660e01b81526004016119c5969594939291906138cc565b60606040518083038185885af11580156119e3573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611a089190613942565b50505050565b60145481565b611a1c611c34565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611aa9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aa090613806565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611b18576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b0f90613a07565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60135481565b601b60179054906101000a900460ff1681565b600b6020528060005260406000206000915054906101000a900460ff1681565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611cab576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ca290613a99565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611d1a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d1190613b2b565b60405180910390fd5b80600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611df8919061360c565b60405180910390a3505050565b60008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603611e75576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e6c90613bbd565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611ee4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611edb90613c4f565b60405180910390fd5b600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16158015611f885750600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611fdd57600860009054906101000a900460ff16611fdc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fd390613cbb565b60405180910390fd5b5b600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff168061207e5750600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156120ac576120a584848461209388886126e3565b61209d57856120a0565b60005b612809565b90506125d0565b600c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156121505750600c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156121685750601b60189054906101000a900460ff165b156121b3576018548211156121b2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121a990613d4d565b60405180910390fd5b5b60006121be30610e70565b9050600060175482101590508080156121e45750601b60149054906101000a900460ff16155b801561223a5750600a60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156122525750601b60159054906101000a900460ff165b1561227c57601b60169054906101000a900460ff16156122725760175491505b61227b826129ef565b5b612305846040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600660008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546125d79092919063ffffffff16565b600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600960008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806123eb5750600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b6123ff576123fa878787612cce565b612401565b845b9050601b60179054906101000a900460ff1680156124695750600b60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156124ce5760195461248c8261247e89610e70565b61268590919063ffffffff16565b11156124cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124c490613ddf565b60405180910390fd5b5b61252081600660008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461268590919063ffffffff16565b600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516125c0919061360c565b60405180910390a3600193505050505b9392505050565b600083831115829061261f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126169190613428565b60405180910390fd5b506000838561262e9190613e2e565b9050809150509392505050565b600061267d83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506125d7565b905092915050565b60008082846126949190613e62565b9050838110156126d9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126d090613ee2565b60405180910390fd5b8091505092915050565b6000601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614801561278f5750600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b80156127c85750600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156128015750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b905092915050565b6000612894826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600660008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546125d79092919063ffffffff16565b600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061292983600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461268590919063ffffffff16565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000820361297e576103e86013819055505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516129db919061360c565b60405180910390a360019050949350505050565b6001601b60146101000a81548160ff0219169083151502179055506000612a2360155460145461268590919063ffffffff16565b90506000612a3e601054600d5461268590919063ffffffff16565b90506000612a59601154600e5461268590919063ffffffff16565b90506000612a956002612a8786612a79878a612ef590919063ffffffff16565b612f6f90919063ffffffff16565b612f6f90919063ffffffff16565b90506000612aac828761263b90919063ffffffff16565b90506000479050612abc82612fb9565b6000612ad1824761263b90919063ffffffff16565b90506000612afb612aec600289612f6f90919063ffffffff16565b8961263b90919063ffffffff16565b90506000612b376002612b2984612b1b8c88612ef590919063ffffffff16565b612f6f90919063ffffffff16565b612f6f90919063ffffffff16565b90506000612b7483612b66612b576013548c612ef590919063ffffffff16565b87612ef590919063ffffffff16565b612f6f90919063ffffffff16565b90506000612b9d82612b8f858861263b90919063ffffffff16565b61263b90919063ffffffff16565b90506000821115612c1257600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f19350505050158015612c10573d6000803e3d6000fd5b505b6000811115612c8557600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015612c83573d6000803e3d6000fd5b505b600083118015612c955750600088115b15612ca557612ca48884613235565b5b50505050505050505050506000601b60146101000a81548160ff02191690831515021790555050565b60008060009050600a60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615612d5657612d4f6064612d4160145486612ef590919063ffffffff16565b612f6f90919063ffffffff16565b9050612dd4565b600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615612dd357612dd06064612dc260155486612ef590919063ffffffff16565b612f6f90919063ffffffff16565b90505b5b6000811115612ed857612e2f81600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461268590919063ffffffff16565b600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051612ecf919061360c565b60405180910390a35b612eeb818461263b90919063ffffffff16565b9150509392505050565b6000808303612f075760009050612f69565b60008284612f159190613f02565b9050828482612f249190613f73565b14612f64576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612f5b90614016565b60405180910390fd5b809150505b92915050565b6000612fb183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250613335565b905092915050565b6000600267ffffffffffffffff811115612fd657612fd5614036565b5b6040519080825280602002602001820160405280156130045781602001602082028036833780820191505090505b509050308160008151811061301c5761301b614065565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156130c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130e7919061383b565b816001815181106130fb576130fa614065565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061316230601a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611c3c565b601a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b81526004016131c6959493929190614152565b600060405180830381600087803b1580156131e057600080fd5b505af11580156131f4573d6000803e3d6000fd5b505050507f32cde87eb454f3a0b875ab23547023107cfad454363ec88ba5695e2c24aa52a782826040516132299291906141ac565b60405180910390a15050565b61326230601a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611c3c565b601a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d719823085600080600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16426040518863ffffffff1660e01b81526004016132eb969594939291906138cc565b60606040518083038185885af1158015613309573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061332e9190613942565b5050505050565b6000808311829061337c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016133739190613428565b60405180910390fd5b506000838561338b9190613f73565b9050809150509392505050565b600081519050919050565b600082825260208201905092915050565b60005b838110156133d25780820151818401526020810190506133b7565b60008484015250505050565b6000601f19601f8301169050919050565b60006133fa82613398565b61340481856133a3565b93506134148185602086016133b4565b61341d816133de565b840191505092915050565b6000602082019050818103600083015261344281846133ef565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006134758261344a565b9050919050565b6134858161346a565b82525050565b60006020820190506134a0600083018461347c565b92915050565b600080fd5b6134b48161346a565b81146134bf57600080fd5b50565b6000813590506134d1816134ab565b92915050565b6000819050919050565b6134ea816134d7565b81146134f557600080fd5b50565b600081359050613507816134e1565b92915050565b60008060408385031215613524576135236134a6565b5b6000613532858286016134c2565b9250506020613543858286016134f8565b9150509250929050565b60008115159050919050565b6135628161354d565b82525050565b600060208201905061357d6000830184613559565b92915050565b6000819050919050565b60006135a86135a361359e8461344a565b613583565b61344a565b9050919050565b60006135ba8261358d565b9050919050565b60006135cc826135af565b9050919050565b6135dc816135c1565b82525050565b60006020820190506135f760008301846135d3565b92915050565b613606816134d7565b82525050565b600060208201905061362160008301846135fd565b92915050565b6000806000606084860312156136405761363f6134a6565b5b600061364e868287016134c2565b935050602061365f868287016134c2565b9250506040613670868287016134f8565b9150509250925092565b600060ff82169050919050565b6136908161367a565b82525050565b60006020820190506136ab6000830184613687565b92915050565b6000602082840312156136c7576136c66134a6565b5b60006136d5848285016134c2565b91505092915050565b60006136e98261344a565b9050919050565b6136f9816136de565b82525050565b600060208201905061371460008301846136f0565b92915050565b60008060408385031215613731576137306134a6565b5b600061373f858286016134c2565b9250506020613750858286016134c2565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806137a157607f821691505b6020821081036137b4576137b361375a565b5b50919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006137f06020836133a3565b91506137fb826137ba565b602082019050919050565b6000602082019050818103600083015261381f816137e3565b9050919050565b600081519050613835816134ab565b92915050565b600060208284031215613851576138506134a6565b5b600061385f84828501613826565b91505092915050565b600060408201905061387d600083018561347c565b61388a602083018461347c565b9392505050565b6000819050919050565b60006138b66138b16138ac84613891565b613583565b6134d7565b9050919050565b6138c68161389b565b82525050565b600060c0820190506138e1600083018961347c565b6138ee60208301886135fd565b6138fb60408301876138bd565b61390860608301866138bd565b613915608083018561347c565b61392260a08301846135fd565b979650505050505050565b60008151905061393c816134e1565b92915050565b60008060006060848603121561395b5761395a6134a6565b5b60006139698682870161392d565b935050602061397a8682870161392d565b925050604061398b8682870161392d565b9150509250925092565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b60006139f16026836133a3565b91506139fc82613995565b604082019050919050565b60006020820190508181036000830152613a20816139e4565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000613a836024836133a3565b9150613a8e82613a27565b604082019050919050565b60006020820190508181036000830152613ab281613a76565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000613b156022836133a3565b9150613b2082613ab9565b604082019050919050565b60006020820190508181036000830152613b4481613b08565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000613ba76025836133a3565b9150613bb282613b4b565b604082019050919050565b60006020820190508181036000830152613bd681613b9a565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000613c396023836133a3565b9150613c4482613bdd565b604082019050919050565b60006020820190508181036000830152613c6881613c2c565b9050919050565b7f54726164696e67206e6f7420656e61626c656400000000000000000000000000600082015250565b6000613ca56013836133a3565b9150613cb082613c6f565b602082019050919050565b60006020820190508181036000830152613cd481613c98565b9050919050565b7f5472616e7366657220616d6f756e74206578636565647320746865206d61785460008201527f78416d6f756e742e000000000000000000000000000000000000000000000000602082015250565b6000613d376028836133a3565b9150613d4282613cdb565b604082019050919050565b60006020820190508181036000830152613d6681613d2a565b9050919050565b7f416d6f756e74204578636565642046726f6d204d61782057616c6c6574204c6960008201527f6d69742121000000000000000000000000000000000000000000000000000000602082015250565b6000613dc96025836133a3565b9150613dd482613d6d565b604082019050919050565b60006020820190508181036000830152613df881613dbc565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000613e39826134d7565b9150613e44836134d7565b9250828203905081811115613e5c57613e5b613dff565b5b92915050565b6000613e6d826134d7565b9150613e78836134d7565b9250828201905080821115613e9057613e8f613dff565b5b92915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b6000613ecc601b836133a3565b9150613ed782613e96565b602082019050919050565b60006020820190508181036000830152613efb81613ebf565b9050919050565b6000613f0d826134d7565b9150613f18836134d7565b9250828202613f26816134d7565b91508282048414831517613f3d57613f3c613dff565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000613f7e826134d7565b9150613f89836134d7565b925082613f9957613f98613f44565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b60006140006021836133a3565b915061400b82613fa4565b604082019050919050565b6000602082019050818103600083015261402f81613ff3565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6140c98161346a565b82525050565b60006140db83836140c0565b60208301905092915050565b6000602082019050919050565b60006140ff82614094565b614109818561409f565b9350614114836140b0565b8060005b8381101561414557815161412c88826140cf565b9750614137836140e7565b925050600181019050614118565b5085935050505092915050565b600060a08201905061416760008301886135fd565b61417460208301876138bd565b818103604083015261418681866140f4565b9050614195606083018561347c565b6141a260808301846135fd565b9695505050505050565b60006040820190506141c160008301856135fd565b81810360208301526141d381846140f4565b9050939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212205cacd80ffee0585e5206bd4c75224c8f5f75c630bfa4acc3022bb6d5ec0f567264736f6c63430008130033