60806040523480156200001157600080fd5b50604051620033b9380380620033b9833981810160405281019062000037919062000924565b733cc6cdda760b79bafa08df41ecfa224f810dceb660018383816002908162000061919062000c5d565b50806003908162000073919062000c5d565b50620000846200031360201b60201c565b6000819055505050620000ac620000a06200031c60201b60201c565b6200032460201b60201c565b60006daaeb6d7670e522a718067333cd4e73ffffffffffffffffffffffffffffffffffffffff163b1115620002a157801562000167576daaeb6d7670e522a718067333cd4e73ffffffffffffffffffffffffffffffffffffffff16637d3e3dbe30846040518363ffffffff1660e01b81526004016200012d92919062000d55565b600060405180830381600087803b1580156200014857600080fd5b505af11580156200015d573d6000803e3d6000fd5b50505050620002a0565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161462000221576daaeb6d7670e522a718067333cd4e73ffffffffffffffffffffffffffffffffffffffff1663a0af290330846040518363ffffffff1660e01b8152600401620001e792919062000d55565b600060405180830381600087803b1580156200020257600080fd5b505af115801562000217573d6000803e3d6000fd5b505050506200029f565b6daaeb6d7670e522a718067333cd4e73ffffffffffffffffffffffffffffffffffffffff16634420e486306040518263ffffffff1660e01b81526004016200026a919062000d82565b600060405180830381600087803b1580156200028557600080fd5b505af11580156200029a573d6000803e3d6000fd5b505050505b5b5b50508260099081620002b4919062000c5d565b5060005b84518110156200030857620002f2858281518110620002dc57620002db62000d9f565b5b60200260200101516001620003ea60201b60201c565b8080620002ff9062000dfd565b915050620002b8565b505050505062000e4a565b60006001905090565b600033905090565b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600080549050600082036200042b576040517fb562e8dd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b620004406000848385620005d160201b60201c565b600160406001901b178202600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550620004cf83620004b16000866000620005d760201b60201c565b620004c2856200060760201b60201c565b176200061760201b60201c565b6004600083815260200190815260200160002081905550600080838301905073ffffffffffffffffffffffffffffffffffffffff85169150828260007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a4600183015b8181146200057257808360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a460018101905062000535565b5060008203620005ae576040517f2e07630000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b806000819055505050620005cc60008483856200064260201b60201c565b505050565b50505050565b60008060e883901c905060e8620005f68686846200064860201b60201c565b62ffffff16901b9150509392505050565b60006001821460e11b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff83169250814260a01b178317905092915050565b50505050565b60009392505050565b6000604051905090565b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b620006b5826200066a565b810181811067ffffffffffffffff82111715620006d757620006d66200067b565b5b80604052505050565b6000620006ec62000651565b9050620006fa8282620006aa565b919050565b600067ffffffffffffffff8211156200071d576200071c6200067b565b5b602082029050602081019050919050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620007608262000733565b9050919050565b620007728162000753565b81146200077e57600080fd5b50565b600081519050620007928162000767565b92915050565b6000620007af620007a984620006ff565b620006e0565b90508083825260208201905060208402830185811115620007d557620007d46200072e565b5b835b81811015620008025780620007ed888262000781565b845260208401935050602081019050620007d7565b5050509392505050565b600082601f83011262000824576200082362000665565b5b81516200083684826020860162000798565b91505092915050565b600080fd5b600067ffffffffffffffff8211156200086257620008616200067b565b5b6200086d826200066a565b9050602081019050919050565b60005b838110156200089a5780820151818401526020810190506200087d565b60008484015250505050565b6000620008bd620008b78462000844565b620006e0565b905082815260208101848484011115620008dc57620008db6200083f565b5b620008e98482856200087a565b509392505050565b600082601f83011262000909576200090862000665565b5b81516200091b848260208601620008a6565b91505092915050565b600080600080608085870312156200094157620009406200065b565b5b600085015167ffffffffffffffff81111562000962576200096162000660565b5b62000970878288016200080c565b945050602085015167ffffffffffffffff81111562000994576200099362000660565b5b620009a287828801620008f1565b935050604085015167ffffffffffffffff811115620009c657620009c562000660565b5b620009d487828801620008f1565b925050606085015167ffffffffffffffff811115620009f857620009f762000660565b5b62000a0687828801620008f1565b91505092959194509250565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168062000a6557607f821691505b60208210810362000a7b5762000a7a62000a1d565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b60006008830262000ae57fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000aa6565b62000af1868362000aa6565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b600062000b3e62000b3862000b328462000b09565b62000b13565b62000b09565b9050919050565b6000819050919050565b62000b5a8362000b1d565b62000b7262000b698262000b45565b84845462000ab3565b825550505050565b600090565b62000b8962000b7a565b62000b9681848462000b4f565b505050565b5b8181101562000bbe5762000bb260008262000b7f565b60018101905062000b9c565b5050565b601f82111562000c0d5762000bd78162000a81565b62000be28462000a96565b8101602085101562000bf2578190505b62000c0a62000c018562000a96565b83018262000b9b565b50505b505050565b600082821c905092915050565b600062000c326000198460080262000c12565b1980831691505092915050565b600062000c4d838362000c1f565b9150826002028217905092915050565b62000c688262000a12565b67ffffffffffffffff81111562000c845762000c836200067b565b5b62000c90825462000a4c565b62000c9d82828562000bc2565b600060209050601f83116001811462000cd5576000841562000cc0578287015190505b62000ccc858262000c3f565b86555062000d3c565b601f19841662000ce58662000a81565b60005b8281101562000d0f5784890151825560018201915060208501945060208101905062000ce8565b8683101562000d2f578489015162000d2b601f89168262000c1f565b8355505b6001600288020188555050505b505050505050565b62000d4f8162000753565b82525050565b600060408201905062000d6c600083018562000d44565b62000d7b602083018462000d44565b9392505050565b600060208201905062000d99600083018462000d44565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600062000e0a8262000b09565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820362000e3f5762000e3e62000dce565b5b600182019050919050565b61255f8062000e5a6000396000f3fe60806040526004361061012a5760003560e01c806370a08231116100ab578063b4ce37d21161006f578063b4ce37d2146103b7578063b88d4fde146103e2578063c87b56dd146103fe578063e0df5b6f1461043b578063e985e9c514610464578063f2fde38b146104a15761012a565b806370a08231146102e4578063715018a6146103215780638da5cb5b1461033857806395d89b4114610363578063a22cb4651461038e5761012a565b806318160ddd116100f257806318160ddd1461021957806323b872dd1461024457806341f434341461026057806342842e0e1461028b5780636352211e146102a75761012a565b806301ffc9a71461012f57806306fdde031461016c578063081812fc14610197578063095ea7b3146101d45780631375a681146101f0575b600080fd5b34801561013b57600080fd5b506101566004803603810190610151919061180b565b6104ca565b6040516101639190611853565b60405180910390f35b34801561017857600080fd5b506101816104dc565b60405161018e91906118fe565b60405180910390f35b3480156101a357600080fd5b506101be60048036038101906101b99190611956565b61056e565b6040516101cb91906119c4565b60405180910390f35b6101ee60048036038101906101e99190611a0b565b6105ed565b005b3480156101fc57600080fd5b5061021760048036038101906102129190611b93565b610731565b005b34801561022557600080fd5b5061022e610781565b60405161023b9190611beb565b60405180910390f35b61025e60048036038101906102599190611c06565b610798565b005b34801561026c57600080fd5b50610275610aba565b6040516102829190611cb8565b60405180910390f35b6102a560048036038101906102a09190611c06565b610acc565b005b3480156102b357600080fd5b506102ce60048036038101906102c99190611956565b610aec565b6040516102db91906119c4565b60405180910390f35b3480156102f057600080fd5b5061030b60048036038101906103069190611cd3565b610afe565b6040516103189190611beb565b60405180910390f35b34801561032d57600080fd5b50610336610bb6565b005b34801561034457600080fd5b5061034d610bca565b60405161035a91906119c4565b60405180910390f35b34801561036f57600080fd5b50610378610bf4565b60405161038591906118fe565b60405180910390f35b34801561039a57600080fd5b506103b560048036038101906103b09190611d2c565b610c86565b005b3480156103c357600080fd5b506103cc610d91565b6040516103d991906118fe565b60405180910390f35b6103fc60048036038101906103f79190611e21565b610e1f565b005b34801561040a57600080fd5b5061042560048036038101906104209190611956565b610e92565b60405161043291906118fe565b60405180910390f35b34801561044757600080fd5b50610462600480360381019061045d9190611f45565b610f65565b005b34801561047057600080fd5b5061048b60048036038101906104869190611f8e565b610f80565b6040516104989190611853565b60405180910390f35b3480156104ad57600080fd5b506104c860048036038101906104c39190611cd3565b611014565b005b60006104d582611097565b9050919050565b6060600280546104eb90611ffd565b80601f016020809104026020016040519081016040528092919081815260200182805461051790611ffd565b80156105645780601f1061053957610100808354040283529160200191610564565b820191906000526020600020905b81548152906001019060200180831161054757829003601f168201915b5050505050905090565b600061057982611129565b6105af576040517fcf4700e400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6006600083815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b60006105f882610aec565b90508073ffffffffffffffffffffffffffffffffffffffff16610619611188565b73ffffffffffffffffffffffffffffffffffffffff161461067c5761064581610640611188565b610f80565b61067b576040517fcfb3b94200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b826006600084815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550818373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a4505050565b610739611190565b60005b815181101561077d5761076a82828151811061075b5761075a61202e565b5b6020026020010151600161120e565b80806107759061208c565b91505061073c565b5050565b600061078b6113c9565b6001546000540303905090565b60006107a3826113d2565b90508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461080a576040517fa114810000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000806108168461149e565b9150915061082c8187610827611188565b6114c5565b610878576108418661083c611188565b610f80565b610877576040517f59c896be00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16036108de576040517fea553b3400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6108eb8686866001611509565b80156108f657600082555b600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600081546001900391905081905550600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008154600101919050819055506109c4856109a088888761150f565b7c020000000000000000000000000000000000000000000000000000000017611537565b600460008681526020019081526020016000208190555060007c0200000000000000000000000000000000000000000000000000000000841603610a4a5760006001850190506000600460008381526020019081526020016000205403610a48576000548114610a47578360046000838152602001908152602001600020819055505b5b505b838573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4610ab28686866001611562565b505050505050565b6daaeb6d7670e522a718067333cd4e81565b610ae783838360405180602001604052806000815250610e1f565b505050565b6000610af7826113d2565b9050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610b65576040517f8f4eb60400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054169050919050565b610bbe611190565b610bc86000611568565b565b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060038054610c0390611ffd565b80601f0160208091040260200160405190810160405280929190818152602001828054610c2f90611ffd565b8015610c7c5780601f10610c5157610100808354040283529160200191610c7c565b820191906000526020600020905b815481529060010190602001808311610c5f57829003601f168201915b5050505050905090565b8060076000610c93611188565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff16610d40611188565b73ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051610d859190611853565b60405180910390a35050565b60098054610d9e90611ffd565b80601f0160208091040260200160405190810160405280929190818152602001828054610dca90611ffd565b8015610e175780601f10610dec57610100808354040283529160200191610e17565b820191906000526020600020905b815481529060010190602001808311610dfa57829003601f168201915b505050505081565b610e2a848484610798565b60008373ffffffffffffffffffffffffffffffffffffffff163b14610e8c57610e558484848461162e565b610e8b576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b50505050565b6060610e9d82611129565b610ed3576040517fa14c4b5000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60098054610ee090611ffd565b80601f0160208091040260200160405190810160405280929190818152602001828054610f0c90611ffd565b8015610f595780601f10610f2e57610100808354040283529160200191610f59565b820191906000526020600020905b815481529060010190602001808311610f3c57829003601f168201915b50505050509050919050565b610f6d611190565b8060099081610f7c9190612276565b5050565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b61101c611190565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361108b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611082906123ba565b60405180910390fd5b61109481611568565b50565b60006301ffc9a760e01b827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806110f257506380ac58cd60e01b827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806111225750635b5e139f60e01b827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b9050919050565b6000816111346113c9565b11158015611143575060005482105b8015611181575060007c0100000000000000000000000000000000000000000000000000000000600460008581526020019081526020016000205416145b9050919050565b600033905090565b61119861177e565b73ffffffffffffffffffffffffffffffffffffffff166111b6610bca565b73ffffffffffffffffffffffffffffffffffffffff161461120c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161120390612426565b60405180910390fd5b565b6000805490506000820361124e576040517fb562e8dd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61125b6000848385611509565b600160406001901b178202600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506112d2836112c3600086600061150f565b6112cc85611786565b17611537565b6004600083815260200190815260200160002081905550600080838301905073ffffffffffffffffffffffffffffffffffffffff85169150828260007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a4600183015b81811461137357808360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a4600181019050611338565b50600082036113ae576040517f2e07630000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8060008190555050506113c46000848385611562565b505050565b60006001905090565b600080829050806113e16113c9565b11611467576000548110156114665760006004600083815260200190815260200160002054905060007c0100000000000000000000000000000000000000000000000000000000821603611464575b6000810361145a576004600083600190039350838152602001908152602001600020549050611430565b8092505050611499565b505b5b6040517fdf2d9b4200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b919050565b60008060006006600085815260200190815260200160002090508092508254915050915091565b600073ffffffffffffffffffffffffffffffffffffffff8316925073ffffffffffffffffffffffffffffffffffffffff821691508382148383141790509392505050565b50505050565b60008060e883901c905060e8611526868684611796565b62ffffff16901b9150509392505050565b600073ffffffffffffffffffffffffffffffffffffffff83169250814260a01b178317905092915050565b50505050565b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60008373ffffffffffffffffffffffffffffffffffffffff1663150b7a02611654611188565b8786866040518563ffffffff1660e01b8152600401611676949392919061249b565b6020604051808303816000875af19250505080156116b257506040513d601f19601f820116820180604052508101906116af91906124fc565b60015b61172b573d80600081146116e2576040519150601f19603f3d011682016040523d82523d6000602084013e6116e7565b606091505b506000815103611723576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050949350505050565b600033905090565b60006001821460e11b9050919050565b60009392505050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6117e8816117b3565b81146117f357600080fd5b50565b600081359050611805816117df565b92915050565b600060208284031215611821576118206117a9565b5b600061182f848285016117f6565b91505092915050565b60008115159050919050565b61184d81611838565b82525050565b60006020820190506118686000830184611844565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156118a857808201518184015260208101905061188d565b60008484015250505050565b6000601f19601f8301169050919050565b60006118d08261186e565b6118da8185611879565b93506118ea81856020860161188a565b6118f3816118b4565b840191505092915050565b6000602082019050818103600083015261191881846118c5565b905092915050565b6000819050919050565b61193381611920565b811461193e57600080fd5b50565b6000813590506119508161192a565b92915050565b60006020828403121561196c5761196b6117a9565b5b600061197a84828501611941565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006119ae82611983565b9050919050565b6119be816119a3565b82525050565b60006020820190506119d960008301846119b5565b92915050565b6119e8816119a3565b81146119f357600080fd5b50565b600081359050611a05816119df565b92915050565b60008060408385031215611a2257611a216117a9565b5b6000611a30858286016119f6565b9250506020611a4185828601611941565b9150509250929050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b611a88826118b4565b810181811067ffffffffffffffff82111715611aa757611aa6611a50565b5b80604052505050565b6000611aba61179f565b9050611ac68282611a7f565b919050565b600067ffffffffffffffff821115611ae657611ae5611a50565b5b602082029050602081019050919050565b600080fd5b6000611b0f611b0a84611acb565b611ab0565b90508083825260208201905060208402830185811115611b3257611b31611af7565b5b835b81811015611b5b5780611b4788826119f6565b845260208401935050602081019050611b34565b5050509392505050565b600082601f830112611b7a57611b79611a4b565b5b8135611b8a848260208601611afc565b91505092915050565b600060208284031215611ba957611ba86117a9565b5b600082013567ffffffffffffffff811115611bc757611bc66117ae565b5b611bd384828501611b65565b91505092915050565b611be581611920565b82525050565b6000602082019050611c006000830184611bdc565b92915050565b600080600060608486031215611c1f57611c1e6117a9565b5b6000611c2d868287016119f6565b9350506020611c3e868287016119f6565b9250506040611c4f86828701611941565b9150509250925092565b6000819050919050565b6000611c7e611c79611c7484611983565b611c59565b611983565b9050919050565b6000611c9082611c63565b9050919050565b6000611ca282611c85565b9050919050565b611cb281611c97565b82525050565b6000602082019050611ccd6000830184611ca9565b92915050565b600060208284031215611ce957611ce86117a9565b5b6000611cf7848285016119f6565b91505092915050565b611d0981611838565b8114611d1457600080fd5b50565b600081359050611d2681611d00565b92915050565b60008060408385031215611d4357611d426117a9565b5b6000611d51858286016119f6565b9250506020611d6285828601611d17565b9150509250929050565b600080fd5b600067ffffffffffffffff821115611d8c57611d8b611a50565b5b611d95826118b4565b9050602081019050919050565b82818337600083830152505050565b6000611dc4611dbf84611d71565b611ab0565b905082815260208101848484011115611de057611ddf611d6c565b5b611deb848285611da2565b509392505050565b600082601f830112611e0857611e07611a4b565b5b8135611e18848260208601611db1565b91505092915050565b60008060008060808587031215611e3b57611e3a6117a9565b5b6000611e49878288016119f6565b9450506020611e5a878288016119f6565b9350506040611e6b87828801611941565b925050606085013567ffffffffffffffff811115611e8c57611e8b6117ae565b5b611e9887828801611df3565b91505092959194509250565b600067ffffffffffffffff821115611ebf57611ebe611a50565b5b611ec8826118b4565b9050602081019050919050565b6000611ee8611ee384611ea4565b611ab0565b905082815260208101848484011115611f0457611f03611d6c565b5b611f0f848285611da2565b509392505050565b600082601f830112611f2c57611f2b611a4b565b5b8135611f3c848260208601611ed5565b91505092915050565b600060208284031215611f5b57611f5a6117a9565b5b600082013567ffffffffffffffff811115611f7957611f786117ae565b5b611f8584828501611f17565b91505092915050565b60008060408385031215611fa557611fa46117a9565b5b6000611fb3858286016119f6565b9250506020611fc4858286016119f6565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061201557607f821691505b60208210810361202857612027611fce565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061209782611920565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036120c9576120c861205d565b5b600182019050919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026121367fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826120f9565b61214086836120f9565b95508019841693508086168417925050509392505050565b600061217361216e61216984611920565b611c59565b611920565b9050919050565b6000819050919050565b61218d83612158565b6121a16121998261217a565b848454612106565b825550505050565b600090565b6121b66121a9565b6121c1818484612184565b505050565b5b818110156121e5576121da6000826121ae565b6001810190506121c7565b5050565b601f82111561222a576121fb816120d4565b612204846120e9565b81016020851015612213578190505b61222761221f856120e9565b8301826121c6565b50505b505050565b600082821c905092915050565b600061224d6000198460080261222f565b1980831691505092915050565b6000612266838361223c565b9150826002028217905092915050565b61227f8261186e565b67ffffffffffffffff81111561229857612297611a50565b5b6122a28254611ffd565b6122ad8282856121e9565b600060209050601f8311600181146122e057600084156122ce578287015190505b6122d8858261225a565b865550612340565b601f1984166122ee866120d4565b60005b82811015612316578489015182556001820191506020850194506020810190506122f1565b86831015612333578489015161232f601f89168261223c565b8355505b6001600288020188555050505b505050505050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b60006123a4602683611879565b91506123af82612348565b604082019050919050565b600060208201905081810360008301526123d381612397565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612410602083611879565b915061241b826123da565b602082019050919050565b6000602082019050818103600083015261243f81612403565b9050919050565b600081519050919050565b600082825260208201905092915050565b600061246d82612446565b6124778185612451565b935061248781856020860161188a565b612490816118b4565b840191505092915050565b60006080820190506124b060008301876119b5565b6124bd60208301866119b5565b6124ca6040830185611bdc565b81810360608301526124dc8184612462565b905095945050505050565b6000815190506124f6816117df565b92915050565b600060208284031215612512576125116117a9565b5b6000612520848285016124e7565b9150509291505056fea2646970667358221220aab1fa0a1dac17a190eeea98cdf5042967a649e384ef92d39f775715af7de16464736f6c6343000811003300000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000088000000000000000000000000000000000000000000000000000000000000008c0000000000000000000000000000000000000000000000000000000000000003b000000000000000000000000e706e6e877297e9a8bdf32acfe45c953f502f4df000000000000000000000000cbcf09d37f38c18e458514104ce37066e7e9cee9000000000000000000000000be973c35a703a7281819629928d4c2f1e3bf36fc00000000000000000000000096326c6946e80a39810ba42af429db77ab628dec000000000000000000000000e07bfbd733b1ad3ef10209e4e85ab0587654c17d0000000000000000000000003917e7f28acfa1dbbaad7f163c1ba40dd5ed1825000000000000000000000000156714b0a23dad61903d4dcfd3a021377af322ff000000000000000000000000ededeb617112e8da52294f12c1950a06cd5c2286000000000000000000000000537f41b0c78d1187976e5ee3d8a970f14fdfa35a00000000000000000000000095db7eac0014ec44a2bcb64c6bb54405cc23fede0000000000000000000000001e5e87916ee06f4bc498c391c07ee8bc04f8a59a000000000000000000000000acab95c403a698d65a9b8b4447016be6fcbecf360000000000000000000000000f2f41c5622c537f9d1bed88ebe409ed1228a9f5000000000000000000000000b2ea3889506327db2defb9554752d211f8e2a3660000000000000000000000006172a3e10ee4a1bc569c9e88e48b26acfa00c8070000000000000000000000005e8fc9584c18e690ea0ab5584a4368c7df63215d0000000000000000000000000dd480b9b8209b2a1438db721c2ae904df7498180000000000000000000000004c55676db3545392b68d8e5ffdea639bf41a9a4900000000000000000000000098df559ca1a1611eb6d3be3a34cb57308db53173000000000000000000000000e17d0ac3f7c498924d4920bf279c01536686e014000000000000000000000000c8e27c252bbef3a0df91d8f0eaa6773d6c87f79b0000000000000000000000004b270f715d70c81d8d1f8ca21de137517a3664cb000000000000000000000000019b18b4a3d17b457013b489a1e65ec529e7b917000000000000000000000000a6aacb29bc195743052559faa8d9bc1ced87df3d0000000000000000000000006013e81eaf3d377af821d5533934eff8b30d83b3000000000000000000000000f1c935d47c68b67092f5295cc27bb05589c535b4000000000000000000000000c6f2c086f1ac1c5f75702ab071215ce98d0d5045000000000000000000000000d9f6d1c4df0a93e57659052bff7397d24316cfd50000000000000000000000009a8f29fabf30fc937b39d99f029b0d2743409847000000000000000000000000239a216bb5661eac2bbf8b5bb5e6d459653fbace0000000000000000000000004e83dbe00b3fc0f2a65b29d6f8894e81a1fd4cd7000000000000000000000000bae939eafca5ed24d3d221ef3bec58037183166e0000000000000000000000009929eb7889461ed7aa383f65992fcc1a0802db5500000000000000000000000094221682d8a6c05ccf8db94eb70f8f8fe5efffb3000000000000000000000000f9f8e7b6faae4a12ad6325ac6629a53fafd94242000000000000000000000000ddfbd857f7d1f14c10a5e966227412faeeec4a34000000000000000000000000f025aac506454c0a16f61ccbea9e95b4c765c732000000000000000000000000b89e08062734f4a576d6a7f184177040ae221e650000000000000000000000005d27aa57a64eab9660089b960dc0d6cde292be1000000000000000000000000091fd7882d12ef3fc1448d16976d5b6bb224a1b040000000000000000000000002aad617f4edbe51326cc106f32f1b4ab50042d0a00000000000000000000000076991314cee341ebe37e6e2712cb04f5d56de355000000000000000000000000c649e74818c98c882496c6613f9b6ba7ee4f26a70000000000000000000000008edf080a7426252e37dff5a8ad2c3fa3d1099620000000000000000000000000289e5f13a394fe17f92bbf4ca1d2cbbfbbfd3fd20000000000000000000000004aa6993eff298e18f08b4f8f3b58c32408523bcd0000000000000000000000000d50ca263c01ba47f37d6e3393ca0aadd8fd05e0000000000000000000000000bd57fdbfb4e067992aa0c0da44dfdb10424f3dd600000000000000000000000016b5aa84efe49f9dd0141b76d3cf4f1128eac91b000000000000000000000000ab756c25d551fd37da2d39f3c0a19d2b11333675000000000000000000000000019882754422109dbaedbcb3ee6e5cfca64f3c11000000000000000000000000f68dbcc7e25060110d175b4cb13a4e88b17cf778000000000000000000000000eb5a4b97fbaff8b9a45fa7d53e867d6ae159cd0800000000000000000000000052e16e86c64544cf695122dca90d3bf1787ab9880000000000000000000000009c3dab4ac9bcf8356fec4171df2bde77d5f3ac76000000000000000000000000b1958b63277eecd05d807404ccf0aea5ec4d2190000000000000000000000000cfe20dff0a8d1b58eaa9d47350af6bf2aeba3e6c000000000000000000000000c86141c3ce630bb26a9b3b6ac26a7c695e0ec1ae00000000000000000000000018beceb3674f20ee3f75c03ef06542c8c882d088000000000000000000000000000000000000000000000000000000000000005d68747470733a2f2f7075622d30313930353232343138656434306138623635333036616234336633393966642e72322e6465762f73657074656d6265725f6d6f75726e696e672f6d657461646174612f6d657461646174612e6a736f6e000000000000000000000000000000000000000000000000000000000000000000000c523153332041697264726f70000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000035231530000000000000000000000000000000000000000000000000000000000