60806040523480156200001157600080fd5b506040518060400160405280600781526020017f4269747265756d000000000000000000000000000000000000000000000000008152506040518060400160405280600781526020017f4269747265756d0000000000000000000000000000000000000000000000000081525081600390816200008f919062000ec9565b508060049081620000a1919062000ec9565b5050506000620000b6620008b760201b60201c565b905080600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3506000603846036200017d577310ed43c718714eb63d5aa57b78b54704e256024e9050620001dd565b60614603620001a35773d99d1c33f9fc3444f8101754abc46c52416550d19050620001dc565b6001461480620001b35750600546145b15620001d657737a250d5630b4cf539739df2c5dacb4c659f2488d9050620001db565b600080fd5b5b5b600081905060008173ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000230573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200025691906200101a565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308473ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620002be573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002e491906200101a565b6040518363ffffffff1660e01b8152600401620003039291906200105d565b6020604051808303816000875af115801562000323573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200034991906200101a565b905081600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506200042230600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff620008bf60201b60201c565b6040518060400160405280600c81526020017f636f696e73756c742e6e657400000000000000000000000000000000000000008152506009908162000468919062000ec9565b506032600a819055506032600b819055506000600c819055507341ca0fb381e2c2452d173c5b480cf5228f105339600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001601160006101000a81548160ff0219169083151502179055506001601060006200050762000a9060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001601060003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060016010600061dead73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160106000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600860006200069a62000a9060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060016008600061dead73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600860003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620007ed620007b162000a9060201b60201c565b620007c162000aba60201b60201c565b600a620007cf91906200121a565b6402540be400620007e191906200126b565b62000ac360201b60201c565b6113886200080062000c3b60201b60201c565b6200080c9190620012e5565b600e819055506103e860646200082762000c3b60201b60201c565b6200083391906200126b565b6200083f9190620012e5565b6012819055506103e860646200085a62000c3b60201b60201c565b6200086691906200126b565b620008729190620012e5565b6013819055506000600f60026101000a81548160ff0219169083151502179055506000600f60016101000a81548160ff02191690831515021790555050505062001539565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160362000931576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200092890620013a4565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603620009a3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200099a906200143c565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405162000a8391906200146f565b60405180910390a3505050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60006012905090565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362000b35576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000b2c90620014dc565b60405180910390fd5b62000b496000838362000c4560201b60201c565b806002600082825462000b5d9190620014fe565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825462000bb49190620014fe565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405162000c1b91906200146f565b60405180910390a362000c376000838362000c4a60201b60201c565b5050565b6000600254905090565b505050565b505050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168062000cd157607f821691505b60208210810362000ce75762000ce662000c89565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b60006008830262000d517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000d12565b62000d5d868362000d12565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b600062000daa62000da462000d9e8462000d75565b62000d7f565b62000d75565b9050919050565b6000819050919050565b62000dc68362000d89565b62000dde62000dd58262000db1565b84845462000d1f565b825550505050565b600090565b62000df562000de6565b62000e0281848462000dbb565b505050565b5b8181101562000e2a5762000e1e60008262000deb565b60018101905062000e08565b5050565b601f82111562000e795762000e438162000ced565b62000e4e8462000d02565b8101602085101562000e5e578190505b62000e7662000e6d8562000d02565b83018262000e07565b50505b505050565b600082821c905092915050565b600062000e9e6000198460080262000e7e565b1980831691505092915050565b600062000eb9838362000e8b565b9150826002028217905092915050565b62000ed48262000c4f565b67ffffffffffffffff81111562000ef05762000eef62000c5a565b5b62000efc825462000cb8565b62000f0982828562000e2e565b600060209050601f83116001811462000f41576000841562000f2c578287015190505b62000f38858262000eab565b86555062000fa8565b601f19841662000f518662000ced565b60005b8281101562000f7b5784890151825560018201915060208501945060208101905062000f54565b8683101562000f9b578489015162000f97601f89168262000e8b565b8355505b6001600288020188555050505b505050505050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000fe28262000fb5565b9050919050565b62000ff48162000fd5565b81146200100057600080fd5b50565b600081519050620010148162000fe9565b92915050565b60006020828403121562001033576200103262000fb0565b5b6000620010438482850162001003565b91505092915050565b620010578162000fd5565b82525050565b60006040820190506200107460008301856200104c565b6200108360208301846200104c565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b60018511156200111857808604811115620010f057620010ef6200108a565b5b6001851615620011005780820291505b80810290506200111085620010b9565b9450620010d0565b94509492505050565b60008262001133576001905062001206565b8162001143576000905062001206565b81600181146200115c576002811462001167576200119d565b600191505062001206565b60ff8411156200117c576200117b6200108a565b5b8360020a9150848211156200119657620011956200108a565b5b5062001206565b5060208310610133831016604e8410600b8410161715620011d75782820a905083811115620011d157620011d06200108a565b5b62001206565b620011e68484846001620010c6565b925090508184048111156200120057620011ff6200108a565b5b81810290505b9392505050565b600060ff82169050919050565b6000620012278262000d75565b915062001234836200120d565b9250620012637fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462001121565b905092915050565b6000620012788262000d75565b9150620012858362000d75565b9250828202620012958162000d75565b91508282048414831517620012af57620012ae6200108a565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000620012f28262000d75565b9150620012ff8362000d75565b925082620013125762001311620012b6565b5b828204905092915050565b600082825260208201905092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006200138c6024836200131d565b915062001399826200132e565b604082019050919050565b60006020820190508181036000830152620013bf816200137d565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000620014246022836200131d565b91506200143182620013c6565b604082019050919050565b60006020820190508181036000830152620014578162001415565b9050919050565b620014698162000d75565b82525050565b60006020820190506200148660008301846200145e565b92915050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b6000620014c4601f836200131d565b9150620014d1826200148c565b602082019050919050565b60006020820190508181036000830152620014f781620014b5565b9050919050565b60006200150b8262000d75565b9150620015188362000d75565b92508282019050808211156200153357620015326200108a565b5b92915050565b614db480620015496000396000f3fe60806040526004361061024a5760003560e01c806370a0823111610139578063afa4f3b2116100b6578063dd62ed3e1161007a578063dd62ed3e1461088f578063e01af92c146108cc578063e2f45605146108f5578063eba4c33314610920578063f2fde38b14610949578063f9d0831a1461097257610251565b8063afa4f3b2146107c0578063b6f7f681146107e9578063bb85c6d114610812578063c02466681461083b578063dc4c7dbc1461086457610251565b80638a8c523c116100fd5780638a8c523c146106d95780638da5cb5b146106f057806395d89b411461071b578063a457c2d714610746578063a9059cbb1461078357610251565b806370a0823114610608578063715018a61461064557806371fc46881461065c57806375f0a87414610685578063880bcbc1146106b057610251565b806339509351116101c757806359136fa51161018b57806359136fa5146105335780635fc2e5961461055e57806364c98c44146105895780636ddd1713146105b2578063702509fd146105dd57610251565b8063395093511461043a57806349bd5a5e146104775780634ada218b146104a25780634fbee193146104cd57806356a6cabf1461050a57610251565b806318160ddd1161020e57806318160ddd1461033f57806318d9ceae1461036a57806323b872dd146103a75780632ba86bf2146103e4578063313ce5671461040f57610251565b80630105d0fd1461025657806302d05d3f1461028157806306fdde03146102ac578063095ea7b3146102d75780631694505e1461031457610251565b3661025157005b600080fd5b34801561026257600080fd5b5061026b61099b565b6040516102789190613561565b60405180910390f35b34801561028d57600080fd5b506102966109a1565b6040516102a3919061360c565b60405180910390f35b3480156102b857600080fd5b506102c1610a2f565b6040516102ce919061360c565b60405180910390f35b3480156102e357600080fd5b506102fe60048036038101906102f991906136bd565b610ac1565b60405161030b9190613718565b60405180910390f35b34801561032057600080fd5b50610329610adf565b6040516103369190613792565b60405180910390f35b34801561034b57600080fd5b50610354610b05565b6040516103619190613561565b60405180910390f35b34801561037657600080fd5b50610391600480360381019061038c91906137ad565b610b0f565b60405161039e9190613718565b60405180910390f35b3480156103b357600080fd5b506103ce60048036038101906103c991906137da565b610b65565b6040516103db9190613718565b60405180910390f35b3480156103f057600080fd5b506103f9610c84565b6040516104069190613718565b60405180910390f35b34801561041b57600080fd5b50610424610c97565b6040516104319190613849565b60405180910390f35b34801561044657600080fd5b50610461600480360381019061045c91906136bd565b610ca0565b60405161046e9190613718565b60405180910390f35b34801561048357600080fd5b5061048c610d4c565b6040516104999190613873565b60405180910390f35b3480156104ae57600080fd5b506104b7610d72565b6040516104c49190613718565b60405180910390f35b3480156104d957600080fd5b506104f460048036038101906104ef91906137ad565b610d85565b6040516105019190613718565b60405180910390f35b34801561051657600080fd5b50610531600480360381019061052c91906138ba565b610ddb565b005b34801561053f57600080fd5b50610548610f2a565b6040516105559190613561565b60405180910390f35b34801561056a57600080fd5b50610573610f30565b6040516105809190613561565b60405180910390f35b34801561059557600080fd5b506105b060048036038101906105ab91906138e7565b610f36565b005b3480156105be57600080fd5b506105c7611054565b6040516105d49190613718565b60405180910390f35b3480156105e957600080fd5b506105f2611067565b6040516105ff9190613561565b60405180910390f35b34801561061457600080fd5b5061062f600480360381019061062a91906137ad565b61106d565b60405161063c9190613561565b60405180910390f35b34801561065157600080fd5b5061065a6110b5565b005b34801561066857600080fd5b50610683600480360381019061067e91906138e7565b61120d565b005b34801561069157600080fd5b5061069a61132d565b6040516106a79190613873565b60405180910390f35b3480156106bc57600080fd5b506106d760048036038101906106d29190613914565b611353565b005b3480156106e557600080fd5b506106ee611593565b005b3480156106fc57600080fd5b506107056116b2565b6040516107129190613873565b60405180910390f35b34801561072757600080fd5b506107306116dc565b60405161073d919061360c565b60405180910390f35b34801561075257600080fd5b5061076d600480360381019061076891906136bd565b61176e565b60405161077a9190613718565b60405180910390f35b34801561078f57600080fd5b506107aa60048036038101906107a591906136bd565b611859565b6040516107b79190613718565b60405180910390f35b3480156107cc57600080fd5b506107e760048036038101906107e291906138e7565b611877565b005b3480156107f557600080fd5b50610810600480360381019061080b9190613954565b6119a8565b005b34801561081e57600080fd5b50610839600480360381019061083491906137ad565b611b7d565b005b34801561084757600080fd5b50610862600480360381019061085d9190613914565b611db0565b005b34801561087057600080fd5b50610879611f82565b6040516108869190613561565b60405180910390f35b34801561089b57600080fd5b506108b660048036038101906108b19190613994565b611f88565b6040516108c39190613561565b60405180910390f35b3480156108d857600080fd5b506108f360048036038101906108ee91906138ba565b61200f565b005b34801561090157600080fd5b5061090a612118565b6040516109179190613561565b60405180910390f35b34801561092c57600080fd5b50610947600480360381019061094291906138e7565b61211e565b005b34801561095557600080fd5b50610970600480360381019061096b91906137ad565b61223e565b005b34801561097e57600080fd5b50610999600480360381019061099491906137ad565b612404565b005b60125481565b600980546109ae90613a03565b80601f01602080910402602001604051908101604052809291908181526020018280546109da90613a03565b8015610a275780601f106109fc57610100808354040283529160200191610a27565b820191906000526020600020905b815481529060010190602001808311610a0a57829003601f168201915b505050505081565b606060038054610a3e90613a03565b80601f0160208091040260200160405190810160405280929190818152602001828054610a6a90613a03565b8015610ab75780601f10610a8c57610100808354040283529160200191610ab7565b820191906000526020600020905b815481529060010190602001808311610a9a57829003601f168201915b5050505050905090565b6000610ad5610ace612674565b848461267c565b6001905092915050565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600254905090565b6000601060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b600080600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610bb1612674565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610c6d5782811015610c58576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c4f90613aa6565b60405180910390fd5b610c6c85610c64612674565b85840361267c565b5b610c78858585612845565b60019150509392505050565b601160009054906101000a900460ff1681565b60006012905090565b6000610d42610cad612674565b848460016000610cbb612674565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610d3d9190613af5565b61267c565b6001905092915050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600f60029054906101000a900460ff1681565b6000600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b610de3612674565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e72576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e6990613b75565b60405180910390fd5b601160009054906101000a900460ff16151581151503610ec7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ebe90613c07565b60405180910390fd5b80601160006101000a81548160ff0219169083151502179055507fe81be35e61864c26afd7a4655e99f321378d0aaae1e5af8ee67b658a7460f3cf601160009054906101000a900460ff16604051610f1f9190613718565b60405180910390a150565b60135481565b600a5481565b610f3e612674565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610fcd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fc490613b75565b60405180910390fd5b6005811115611011576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161100890613c99565b60405180910390fd5b80600c819055507f925fa17eb1bbdac8e18750276099046910212e51b0d15da024f67ce9fb25cc9b600c546040516110499190613561565b60405180910390a150565b600f60019054906101000a900460ff1681565b600c5481565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6110bd612674565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461114c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161114390613b75565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b611215612674565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146112a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161129b90613b75565b60405180910390fd5b80600a819055506032600a5411156112f1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112e890613d2b565b60405180910390fd5b7f2c18bb7f919d244fa8ee59517018a471ec455b76373719d2d6664fa3b1947da9600a546040516113229190613561565b60405180910390a150565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61135b612674565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146113ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113e190613b75565b60405180910390fd5b801515601060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615150361147c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161147390613dbd565b60405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036114ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114e190613e29565b60405180910390fd5b80601060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f8727c4afe988887760e8db0bbad9f9fcceee6428545956832f67c8fdbd589c10826040516115879190613718565b60405180910390a25050565b61159b612674565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461162a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161162190613b75565b60405180910390fd5b600f60029054906101000a900460ff161561167a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161167190613e95565b60405180910390fd5b6001600f60026101000a81548160ff0219169083151502179055506001600f60016101000a81548160ff021916908315150217905550565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600480546116eb90613a03565b80601f016020809104026020016040519081016040528092919081815260200182805461171790613a03565b80156117645780601f1061173957610100808354040283529160200191611764565b820191906000526020600020905b81548152906001019060200180831161174757829003601f168201915b5050505050905090565b6000806001600061177d612674565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508281101561183a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161183190613f27565b60405180910390fd5b61184e611845612674565b8585840361267c565b600191505092915050565b600061186d611866612674565b8484612845565b6001905092915050565b61187f612674565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461190e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161190590613b75565b60405180910390fd5b620f424061191a610b05565b6119249190613f76565b8111611965576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161195c90614019565b60405180910390fd5b80600e819055507f7c26bfee26f82e8cb57af48f4019cc64582db6fac7bad778433f10572ae8b145600e5460405161199d9190613561565b60405180910390a150565b6119b0612674565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611a3f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a3690613b75565b60405180910390fd5b6103e8611a4a610c97565b600a611a56919061416c565b611a5e610b05565b611a689190613f76565b611a729190613f76565b8210158015611ab357506103e8611a87610c97565b600a611a93919061416c565b611a9b610b05565b611aa59190613f76565b611aaf9190613f76565b8110155b611af2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ae990614229565b60405180910390fd5b611afa610c97565b600a611b06919061416c565b82611b119190614249565b601281905550611b1f610c97565b600a611b2b919061416c565b81611b369190614249565b6013819055507f8c8cbc911b80df94332ececb8eb0945274d76fa965600a0f01f42af3f8afb131601254601354604051611b7192919061428b565b60405180910390a15050565b611b85612674565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611c14576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c0b90613b75565b60405180910390fd5b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611ca4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c9b90614326565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611d13576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d0a906143b8565b60405180910390fd5b80600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507fa964ba5c52d7e7bfcae4fb1ae4db9f211756d0e618e85fac5283b882a39e7a0b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051611da59190613873565b60405180910390a150565b611db8612674565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611e47576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e3e90613b75565b60405180910390fd5b801515600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151503611ed9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ed09061444a565b60405180910390fd5b80600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df782604051611f769190613718565b60405180910390a25050565b600b5481565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b612017612674565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146120a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161209d90613b75565b60405180910390fd5b801515600f60019054906101000a900460ff161515036120fb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120f2906144dc565b60405180910390fd5b80600f60016101000a81548160ff02191690831515021790555050565b600e5481565b612126612674565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146121b5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121ac90613b75565b60405180910390fd5b80600b819055506032600b541115612202576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121f990613d2b565b60405180910390fd5b7fa54a45ff147b987a50c11919090466ad8b9df105c160d2e6bfb296df2b9abfb7600b546040516122339190613561565b60405180910390a150565b612246612674565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146122d5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122cc90613b75565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603612344576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161233b9061456e565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b61240c612674565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461249b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161249290613b75565b60405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603612509576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161250090614600565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361256c57612566473373ffffffffffffffffffffffffffffffffffffffff16612f5290919063ffffffff16565b50612671565b600081905060008173ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016125ac9190613873565b602060405180830381865afa1580156125c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125ed9190614635565b90508173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff1660e01b815260040161262a929190614662565b6020604051808303816000875af1158015612649573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061266d91906146a0565b5050505b50565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036126eb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126e29061473f565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361275a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612751906147d1565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516128389190613561565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036128b4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128ab90614863565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612923576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161291a906148f5565b60405180910390fd5b600f60029054906101000a900460ff16806129875750600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b806129db5750600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b612a1a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a1190614961565b60405180910390fd5b60008103612a3357612a2e8383600061300d565b612f4d565b601160009054906101000a900460ff1615612c8957600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480612af15750600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b8015612b475750601060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b8015612b9d5750601060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15612c8857600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612c4157601254811115612c3c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c33906149f3565b60405180910390fd5b612c87565b601354811115612c86576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c7d906149f3565b60405180910390fd5b5b5b5b6000612c943061106d565b90506000600e548210159050808015612cba5750600f60009054906101000a900460ff16155b8015612d135750600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b8015612d2b5750600f60019054906101000a900460ff165b15612d70576001600f60006101000a81548160ff021916908315150217905550612d548261328c565b6000600f60006101000a81548160ff0219169083151502179055505b6000600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680612e135750600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b80612e2a5750600f60009054906101000a900460ff165b15612e385760009050612efe565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1603612e9757600a549050612efd565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1603612ef657600b549050612efc565b600c5490505b5b5b6000811115612f3e57600060648286612f179190614249565b612f219190613f76565b90508085612f2f9190614a13565b9450612f3c87308361300d565b505b612f4986868661300d565b5050505b505050565b600081471015612f97576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612f8e90614a93565b60405180910390fd5b60008373ffffffffffffffffffffffffffffffffffffffff1683604051612fbd90614ae4565b60006040518083038185875af1925050503d8060008114612ffa576040519150601f19603f3d011682016040523d82523d6000602084013e612fff565b606091505b505090508091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361307c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161307390614863565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036130eb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016130e2906148f5565b60405180910390fd5b6130f683838361353e565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508181101561317c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161317390614b6b565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461320f9190613af5565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516132739190613561565b60405180910390a3613286848484613543565b50505050565b60004790506000600267ffffffffffffffff8111156132ae576132ad614b8b565b5b6040519080825280602002602001820160405280156132dc5781602001602082028036833780820191505090505b50905030816000815181106132f4576132f3614bba565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561339b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133bf9190614bfe565b816001815181106133d3576133d2614bba565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478460008430426040518663ffffffff1660e01b8152600401613471959493929190614d24565b600060405180830381600087803b15801561348b57600080fd5b505af115801561349f573d6000803e3d6000fd5b50505050600082476134b19190614a13565b90506134fe81600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16612f5290919063ffffffff16565b507f957ad1fc6d4d41da6d1a8d37303289ef3c4b78e0285ff5df1e12070ef0e62999848260405161353092919061428b565b60405180910390a150505050565b505050565b505050565b6000819050919050565b61355b81613548565b82525050565b60006020820190506135766000830184613552565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156135b657808201518184015260208101905061359b565b60008484015250505050565b6000601f19601f8301169050919050565b60006135de8261357c565b6135e88185613587565b93506135f8818560208601613598565b613601816135c2565b840191505092915050565b6000602082019050818103600083015261362681846135d3565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061365e82613633565b9050919050565b61366e81613653565b811461367957600080fd5b50565b60008135905061368b81613665565b92915050565b61369a81613548565b81146136a557600080fd5b50565b6000813590506136b781613691565b92915050565b600080604083850312156136d4576136d361362e565b5b60006136e28582860161367c565b92505060206136f3858286016136a8565b9150509250929050565b60008115159050919050565b613712816136fd565b82525050565b600060208201905061372d6000830184613709565b92915050565b6000819050919050565b600061375861375361374e84613633565b613733565b613633565b9050919050565b600061376a8261373d565b9050919050565b600061377c8261375f565b9050919050565b61378c81613771565b82525050565b60006020820190506137a76000830184613783565b92915050565b6000602082840312156137c3576137c261362e565b5b60006137d18482850161367c565b91505092915050565b6000806000606084860312156137f3576137f261362e565b5b60006138018682870161367c565b93505060206138128682870161367c565b9250506040613823868287016136a8565b9150509250925092565b600060ff82169050919050565b6138438161382d565b82525050565b600060208201905061385e600083018461383a565b92915050565b61386d81613653565b82525050565b60006020820190506138886000830184613864565b92915050565b613897816136fd565b81146138a257600080fd5b50565b6000813590506138b48161388e565b92915050565b6000602082840312156138d0576138cf61362e565b5b60006138de848285016138a5565b91505092915050565b6000602082840312156138fd576138fc61362e565b5b600061390b848285016136a8565b91505092915050565b6000806040838503121561392b5761392a61362e565b5b60006139398582860161367c565b925050602061394a858286016138a5565b9150509250929050565b6000806040838503121561396b5761396a61362e565b5b6000613979858286016136a8565b925050602061398a858286016136a8565b9150509250929050565b600080604083850312156139ab576139aa61362e565b5b60006139b98582860161367c565b92505060206139ca8582860161367c565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680613a1b57607f821691505b602082108103613a2e57613a2d6139d4565b5b50919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206160008201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b6000613a90602883613587565b9150613a9b82613a34565b604082019050919050565b60006020820190508181036000830152613abf81613a83565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000613b0082613548565b9150613b0b83613548565b9250828201905080821115613b2357613b22613ac6565b5b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000613b5f602083613587565b9150613b6a82613b29565b602082019050919050565b60006020820190508181036000830152613b8e81613b52565b9050919050565b7f4d6178207472616e73616374696f6e206c696d697420697320616c726561647960008201527f2073657420746f20746861742073746174650000000000000000000000000000602082015250565b6000613bf1603283613587565b9150613bfc82613b95565b604082019050919050565b60006020820190508181036000830152613c2081613be4565b9050919050565b7f57616c6c657420746f2057616c6c6574205472616e736665722046656520636160008201527f6e6e6f742065786365656420746865206d6178696d756d000000000000000000602082015250565b6000613c83603783613587565b9150613c8e82613c27565b604082019050919050565b60006020820190508181036000830152613cb281613c76565b9050919050565b7f546f74616c20466565732063616e6e6f742065786365656420746865206d617860008201527f696d756d00000000000000000000000000000000000000000000000000000000602082015250565b6000613d15602483613587565b9150613d2082613cb9565b604082019050919050565b60006020820190508181036000830152613d4481613d08565b9050919050565b7f4163636f756e7420697320616c72656164792073657420746f2074686174207360008201527f7461746500000000000000000000000000000000000000000000000000000000602082015250565b6000613da7602483613587565b9150613db282613d4b565b604082019050919050565b60006020820190508181036000830152613dd681613d9a565b9050919050565b7f43616e277420736574207468697320616464726573732e000000000000000000600082015250565b6000613e13601783613587565b9150613e1e82613ddd565b602082019050919050565b60006020820190508181036000830152613e4281613e06565b9050919050565b7f54726164696e6720616c726561647920656e61626c65642e0000000000000000600082015250565b6000613e7f601883613587565b9150613e8a82613e49565b602082019050919050565b60006020820190508181036000830152613eae81613e72565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b6000613f11602583613587565b9150613f1c82613eb5565b604082019050919050565b60006020820190508181036000830152613f4081613f04565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000613f8182613548565b9150613f8c83613548565b925082613f9c57613f9b613f47565b5b828204905092915050565b7f53776170546f6b656e734174416d6f756e74206d75737420626520677265617460008201527f6572207468616e20302e3030303125206f6620746f74616c20737570706c7900602082015250565b6000614003603f83613587565b915061400e82613fa7565b604082019050919050565b6000602082019050818103600083015261403281613ff6565b9050919050565b60008160011c9050919050565b6000808291508390505b60018511156140905780860481111561406c5761406b613ac6565b5b600185161561407b5780820291505b808102905061408985614039565b9450614050565b94509492505050565b6000826140a95760019050614165565b816140b75760009050614165565b81600181146140cd57600281146140d757614106565b6001915050614165565b60ff8411156140e9576140e8613ac6565b5b8360020a915084821115614100576140ff613ac6565b5b50614165565b5060208310610133831016604e8410600b841016171561413b5782820a90508381111561413657614135613ac6565b5b614165565b6141488484846001614046565b9250905081840481111561415f5761415e613ac6565b5b81810290505b9392505050565b600061417782613548565b91506141828361382d565b92506141af7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484614099565b905092915050565b7f4d6178205472616e73616374696f6e206c696d69732063616e6e6f742062652060008201527f6c6f776572207468616e20302e3125206f6620746f74616c20737570706c7900602082015250565b6000614213603f83613587565b915061421e826141b7565b604082019050919050565b6000602082019050818103600083015261424281614206565b9050919050565b600061425482613548565b915061425f83613548565b925082820261426d81613548565b9150828204841483151761428457614283613ac6565b5b5092915050565b60006040820190506142a06000830185613552565b6142ad6020830184613552565b9392505050565b7f4d61726b6574696e672077616c6c657420697320616c7265616479207468617460008201527f2061646472657373000000000000000000000000000000000000000000000000602082015250565b6000614310602883613587565b915061431b826142b4565b604082019050919050565b6000602082019050818103600083015261433f81614303565b9050919050565b7f4d61726b6574696e672077616c6c65742063616e6e6f7420626520746865207a60008201527f65726f2061646472657373000000000000000000000000000000000000000000602082015250565b60006143a2602b83613587565b91506143ad82614346565b604082019050919050565b600060208201905081810360008301526143d181614395565b9050919050565b7f4163636f756e7420697320616c7265616479207468652076616c7565206f662060008201527f276578636c756465642700000000000000000000000000000000000000000000602082015250565b6000614434602a83613587565b915061443f826143d8565b604082019050919050565b6000602082019050818103600083015261446381614427565b9050919050565b7f73776170456e61626c656420616c72656164792061742074686973207374617460008201527f652e000000000000000000000000000000000000000000000000000000000000602082015250565b60006144c6602283613587565b91506144d18261446a565b604082019050919050565b600060208201905081810360008301526144f5816144b9565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000614558602683613587565b9150614563826144fc565b604082019050919050565b600060208201905081810360008301526145878161454b565b9050919050565b7f4f776e65722063616e6e6f7420636c61696d20636f6e7472616374277320626160008201527f6c616e6365206f6620697473206f776e20746f6b656e73000000000000000000602082015250565b60006145ea603783613587565b91506145f58261458e565b604082019050919050565b60006020820190508181036000830152614619816145dd565b9050919050565b60008151905061462f81613691565b92915050565b60006020828403121561464b5761464a61362e565b5b600061465984828501614620565b91505092915050565b60006040820190506146776000830185613864565b6146846020830184613552565b9392505050565b60008151905061469a8161388e565b92915050565b6000602082840312156146b6576146b561362e565b5b60006146c48482850161468b565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000614729602483613587565b9150614734826146cd565b604082019050919050565b600060208201905081810360008301526147588161471c565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006147bb602283613587565b91506147c68261475f565b604082019050919050565b600060208201905081810360008301526147ea816147ae565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b600061484d602583613587565b9150614858826147f1565b604082019050919050565b6000602082019050818103600083015261487c81614840565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006148df602383613587565b91506148ea82614883565b604082019050919050565b6000602082019050818103600083015261490e816148d2565b9050919050565b7f54726164696e67206e6f742079657420656e61626c6564210000000000000000600082015250565b600061494b601883613587565b915061495682614915565b602082019050919050565b6000602082019050818103600083015261497a8161493e565b9050919050565b7f416e74695768616c653a205472616e7366657220616d6f756e7420657863656560008201527f647320746865206d61785472616e73616374696f6e416d6f756e740000000000602082015250565b60006149dd603b83613587565b91506149e882614981565b604082019050919050565b60006020820190508181036000830152614a0c816149d0565b9050919050565b6000614a1e82613548565b9150614a2983613548565b9250828203905081811115614a4157614a40613ac6565b5b92915050565b7f416464726573733a20696e73756666696369656e742062616c616e6365000000600082015250565b6000614a7d601d83613587565b9150614a8882614a47565b602082019050919050565b60006020820190508181036000830152614aac81614a70565b9050919050565b600081905092915050565b50565b6000614ace600083614ab3565b9150614ad982614abe565b600082019050919050565b6000614aef82614ac1565b9150819050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b6000614b55602683613587565b9150614b6082614af9565b604082019050919050565b60006020820190508181036000830152614b8481614b48565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050614bf881613665565b92915050565b600060208284031215614c1457614c1361362e565b5b6000614c2284828501614be9565b91505092915050565b6000819050919050565b6000614c50614c4b614c4684614c2b565b613733565b613548565b9050919050565b614c6081614c35565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b614c9b81613653565b82525050565b6000614cad8383614c92565b60208301905092915050565b6000602082019050919050565b6000614cd182614c66565b614cdb8185614c71565b9350614ce683614c82565b8060005b83811015614d17578151614cfe8882614ca1565b9750614d0983614cb9565b925050600181019050614cea565b5085935050505092915050565b600060a082019050614d396000830188613552565b614d466020830187614c57565b8181036040830152614d588186614cc6565b9050614d676060830185613864565b614d746080830184613552565b969550505050505056fea264697066735822122052eb177d63e0127254776c4177ca35b52d7b463d9d4f871321c9976dab10ec3764736f6c63430008110033