6080604052736fd053bff10512d743fa36c859e49351a4920df6600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503480156200006657600080fd5b506040518060400160405280600481526020017f432d3032000000000000000000000000000000000000000000000000000000008152506040518060400160405280600481526020017f432d3032000000000000000000000000000000000000000000000000000000008152508160029080519060200190620000eb92919062000216565b5080600390805190602001906200010492919062000216565b50620001156200014360201b60201c565b60008190555050506200013d620001316200014860201b60201c565b6200015060201b60201c565b6200032a565b600090565b600033905090565b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b8280546200022490620002f5565b90600052602060002090601f01602090048101928262000248576000855562000294565b82601f106200026357805160ff191683800117855562000294565b8280016001018555821562000294579182015b828111156200029357825182559160200191906001019062000276565b5b509050620002a39190620002a7565b5090565b5b80821115620002c2576000816000905550600101620002a8565b5090565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200030e57607f821691505b602082108103620003245762000323620002c6565b5b50919050565b6132e8806200033a6000396000f3fe608060405234801561001057600080fd5b50600436106101735760003560e01c80636352211e116100de578063a475b5dd11610097578063dbe7e3bd11610071578063dbe7e3bd14610400578063e825417414610430578063e985e9c51461044c578063f2fde38b1461047c57610173565b8063a475b5dd14610396578063b88d4fde146103b4578063c87b56dd146103d057610173565b80636352211e146102d457806370a0823114610304578063715018a6146103345780638da5cb5b1461033e57806395d89b411461035c578063a22cb4651461037a57610173565b806322f3e2d41161013057806322f3e2d41461024e57806323b872dd1461026c5780632750fc781461028857806342842e0e146102a45780634e71d92d146102c05780635f0f45b2146102ca57610173565b806301ffc9a71461017857806306fdde03146101a8578063081812fc146101c6578063095ea7b3146101f6578063129cbd801461021257806318160ddd14610230575b600080fd5b610192600480360381019061018d919061259f565b610498565b60405161019f91906125e7565b60405180910390f35b6101b061057a565b6040516101bd919061269b565b60405180910390f35b6101e060048036038101906101db91906126f3565b61060c565b6040516101ed9190612761565b60405180910390f35b610210600480360381019061020b91906127a8565b610688565b005b61021a610792565b60405161022791906127f7565b60405180910390f35b610238610933565b60405161024591906127f7565b60405180910390f35b61025661094a565b60405161026391906125e7565b60405180910390f35b61028660048036038101906102819190612812565b61095d565b005b6102a2600480360381019061029d9190612891565b61096d565b005b6102be60048036038101906102b99190612812565b610a06565b005b6102c8610a26565b005b6102d2610c36565b005b6102ee60048036038101906102e991906126f3565b610ccf565b6040516102fb9190612761565b60405180910390f35b61031e600480360381019061031991906128be565b610ce5565b60405161032b91906127f7565b60405180910390f35b61033c610db4565b005b610346610e3c565b6040516103539190612761565b60405180910390f35b610364610e66565b604051610371919061269b565b60405180910390f35b610394600480360381019061038f91906128eb565b610ef8565b005b61039e61106f565b6040516103ab91906125e7565b60405180910390f35b6103ce60048036038101906103c99190612a60565b611082565b005b6103ea60048036038101906103e591906126f3565b6110fe565b6040516103f7919061269b565b60405180910390f35b61041a600480360381019061041591906126f3565b6111b7565b60405161042791906125e7565b60405180910390f35b61044a60048036038101906104459190612b84565b6111d7565b005b61046660048036038101906104619190612bfc565b611285565b60405161047391906125e7565b60405180910390f35b610496600480360381019061049191906128be565b611319565b005b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061056357507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80610573575061057282611410565b5b9050919050565b60606002805461058990612c6b565b80601f01602080910402602001604051908101604052809291908181526020018280546105b590612c6b565b80156106025780601f106105d757610100808354040283529160200191610602565b820191906000526020600020905b8154815290600101906020018083116105e557829003601f168201915b5050505050905090565b60006106178261147a565b61064d576040517fcf4700e400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6006600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600061069382610ccf565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036106fa576040517f943f7b8c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166107196114c8565b73ffffffffffffffffffffffffffffffffffffffff161415801561074b5750610749816107446114c8565b611285565b155b15610782576040517fcfb3b94200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61078d8383836114d0565b505050565b60008060005b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231336040518263ffffffff1660e01b81526004016107f39190612761565b602060405180830381865afa158015610810573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108349190612cb1565b81101561092b576000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16632f745c5933846040518363ffffffff1660e01b815260040161089a929190612cde565b602060405180830381865afa1580156108b7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108db9190612cb1565b905060001515600c600083815260200190815260200160002060009054906101000a900460ff16151503610919576001836109169190612d36565b92505b508061092490612d8c565b9050610798565b508091505090565b600061093d611582565b6001546000540303905090565b600b60019054906101000a900460ff1681565b610968838383611587565b505050565b6109756114c8565b73ffffffffffffffffffffffffffffffffffffffff16610993610e3c565b73ffffffffffffffffffffffffffffffffffffffff16146109e9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109e090612e20565b60405180910390fd5b80600b60016101000a81548160ff02191690831515021790555050565b610a2183838360405180602001604052806000815250611082565b505050565b600b60019054906101000a900460ff16610a75576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a6c90612e8c565b60405180910390fd5b60005b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231336040518263ffffffff1660e01b8152600401610ad39190612761565b602060405180830381865afa158015610af0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b149190612cb1565b811015610c33576000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16632f745c5933846040518363ffffffff1660e01b8152600401610b7a929190612cde565b602060405180830381865afa158015610b97573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bbb9190612cb1565b905060001515600c600083815260200190815260200160002060009054906101000a900460ff16151503610c2157610bf4336001611a3b565b6001600c600083815260200190815260200160002060006101000a81548160ff0219169083151502179055505b5080610c2c90612d8c565b9050610a78565b50565b610c3e6114c8565b73ffffffffffffffffffffffffffffffffffffffff16610c5c610e3c565b73ffffffffffffffffffffffffffffffffffffffff1614610cb2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ca990612e20565b60405180910390fd5b6001600b60006101000a81548160ff021916908315150217905550565b6000610cda82611a59565b600001519050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610d4c576040517f8f4eb60400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900467ffffffffffffffff1667ffffffffffffffff169050919050565b610dbc6114c8565b73ffffffffffffffffffffffffffffffffffffffff16610dda610e3c565b73ffffffffffffffffffffffffffffffffffffffff1614610e30576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e2790612e20565b60405180910390fd5b610e3a6000611ce8565b565b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060038054610e7590612c6b565b80601f0160208091040260200160405190810160405280929190818152602001828054610ea190612c6b565b8015610eee5780601f10610ec357610100808354040283529160200191610eee565b820191906000526020600020905b815481529060010190602001808311610ed157829003601f168201915b5050505050905090565b610f006114c8565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610f64576040517fb06307db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8060076000610f716114c8565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff1661101e6114c8565b73ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c318360405161106391906125e7565b60405180910390a35050565b600b60009054906101000a900460ff1681565b61108d848484611587565b6110ac8373ffffffffffffffffffffffffffffffffffffffff16611dae565b80156110c157506110bf84848484611dd1565b155b156110f8576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50505050565b60606111098261147a565b611148576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161113f90612f1e565b60405180910390fd5b600b60009054906101000a900460ff1661118457600a60405160200161116e9190612fdd565b60405160208183030381529060405290506111b2565b600961118f83611f21565b6040516020016111a0929190613025565b60405160208183030381529060405290505b919050565b600c6020528060005260406000206000915054906101000a900460ff1681565b6111df6114c8565b73ffffffffffffffffffffffffffffffffffffffff166111fd610e3c565b73ffffffffffffffffffffffffffffffffffffffff1614611253576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161124a90612e20565b60405180910390fd5b81600a908051906020019061126992919061244d565b50806009908051906020019061128092919061244d565b505050565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6113216114c8565b73ffffffffffffffffffffffffffffffffffffffff1661133f610e3c565b73ffffffffffffffffffffffffffffffffffffffff1614611395576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161138c90612e20565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611404576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113fb906130bb565b60405180910390fd5b61140d81611ce8565b50565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b600081611485611582565b11158015611494575060005482105b80156114c1575060046000838152602001908152602001600020600001601c9054906101000a900460ff16155b9050919050565b600033905090565b826006600084815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550818373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a4505050565b600090565b600061159282611a59565b90508373ffffffffffffffffffffffffffffffffffffffff16816000015173ffffffffffffffffffffffffffffffffffffffff16146115fd576040517fa114810000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008473ffffffffffffffffffffffffffffffffffffffff1661161e6114c8565b73ffffffffffffffffffffffffffffffffffffffff16148061164d575061164c856116476114c8565b611285565b5b80611692575061165b6114c8565b73ffffffffffffffffffffffffffffffffffffffff1661167a8461060c565b73ffffffffffffffffffffffffffffffffffffffff16145b9050806116cb576040517f59c896be00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603611731576040517fea553b3400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61173e8585856001612081565b61174a600084876114d0565b6001600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160008282829054906101000a900467ffffffffffffffff160392506101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506001600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160008282829054906101000a900467ffffffffffffffff160192506101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506000600460008581526020019081526020016000209050848160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550428160000160146101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555060006001850190506000600460008381526020019081526020016000209050600073ffffffffffffffffffffffffffffffffffffffff168160000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16036119c95760005482146119c857878160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555084602001518160000160146101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055505b5b505050828473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4611a348585856001612087565b5050505050565b611a5582826040518060200160405280600081525061208d565b5050565b611a616124d3565b600082905080611a6f611582565b11158015611a7e575060005481105b15611cb1576000600460008381526020019081526020016000206040518060600160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016000820160149054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200160008201601c9054906101000a900460ff16151515158152505090508060400151611caf57600073ffffffffffffffffffffffffffffffffffffffff16816000015173ffffffffffffffffffffffffffffffffffffffff1614611b93578092505050611ce3565b5b600115611cae57818060019003925050600460008381526020019081526020016000206040518060600160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016000820160149054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200160008201601c9054906101000a900460ff1615151515815250509050600073ffffffffffffffffffffffffffffffffffffffff16816000015173ffffffffffffffffffffffffffffffffffffffff1614611ca9578092505050611ce3565b611b94565b5b505b6040517fdf2d9b4200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b919050565b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b60008373ffffffffffffffffffffffffffffffffffffffff1663150b7a02611df76114c8565b8786866040518563ffffffff1660e01b8152600401611e199493929190613130565b6020604051808303816000875af1925050508015611e5557506040513d601f19601f82011682018060405250810190611e529190613191565b60015b611ece573d8060008114611e85576040519150601f19603f3d011682016040523d82523d6000602084013e611e8a565b606091505b506000815103611ec6576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050949350505050565b606060008203611f68576040518060400160405280600181526020017f3000000000000000000000000000000000000000000000000000000000000000815250905061207c565b600082905060005b60008214611f9a578080611f8390612d8c565b915050600a82611f9391906131ed565b9150611f70565b60008167ffffffffffffffff811115611fb657611fb5612935565b5b6040519080825280601f01601f191660200182016040528015611fe85781602001600182028036833780820191505090505b5090505b6000851461207557600182612001919061321e565b9150600a856120109190613252565b603061201c9190612d36565b60f81b81838151811061203257612031613283565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a8561206e91906131ed565b9450611fec565b8093505050505b919050565b50505050565b50505050565b600080549050600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16036120f9576040517f2e07630000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008303612133576040517fb562e8dd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6121406000858386612081565b82600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160008282829054906101000a900467ffffffffffffffff160192506101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555082600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160088282829054906101000a900467ffffffffffffffff160192506101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550836004600083815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550426004600083815260200190815260200160002060000160146101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506000819050600084820190506123018673ffffffffffffffffffffffffffffffffffffffff16611dae565b156123c6575b818673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46123766000878480600101955087611dd1565b6123ac576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8082036123075782600054146123c157600080fd5b612431565b5b818060010192508673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a48082036123c7575b8160008190555050506124476000858386612087565b50505050565b82805461245990612c6b565b90600052602060002090601f01602090048101928261247b57600085556124c2565b82601f1061249457805160ff19168380011785556124c2565b828001600101855582156124c2579182015b828111156124c15782518255916020019190600101906124a6565b5b5090506124cf9190612516565b5090565b6040518060600160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600067ffffffffffffffff1681526020016000151581525090565b5b8082111561252f576000816000905550600101612517565b5090565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61257c81612547565b811461258757600080fd5b50565b60008135905061259981612573565b92915050565b6000602082840312156125b5576125b461253d565b5b60006125c38482850161258a565b91505092915050565b60008115159050919050565b6125e1816125cc565b82525050565b60006020820190506125fc60008301846125d8565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561263c578082015181840152602081019050612621565b8381111561264b576000848401525b50505050565b6000601f19601f8301169050919050565b600061266d82612602565b612677818561260d565b935061268781856020860161261e565b61269081612651565b840191505092915050565b600060208201905081810360008301526126b58184612662565b905092915050565b6000819050919050565b6126d0816126bd565b81146126db57600080fd5b50565b6000813590506126ed816126c7565b92915050565b6000602082840312156127095761270861253d565b5b6000612717848285016126de565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061274b82612720565b9050919050565b61275b81612740565b82525050565b60006020820190506127766000830184612752565b92915050565b61278581612740565b811461279057600080fd5b50565b6000813590506127a28161277c565b92915050565b600080604083850312156127bf576127be61253d565b5b60006127cd85828601612793565b92505060206127de858286016126de565b9150509250929050565b6127f1816126bd565b82525050565b600060208201905061280c60008301846127e8565b92915050565b60008060006060848603121561282b5761282a61253d565b5b600061283986828701612793565b935050602061284a86828701612793565b925050604061285b868287016126de565b9150509250925092565b61286e816125cc565b811461287957600080fd5b50565b60008135905061288b81612865565b92915050565b6000602082840312156128a7576128a661253d565b5b60006128b58482850161287c565b91505092915050565b6000602082840312156128d4576128d361253d565b5b60006128e284828501612793565b91505092915050565b600080604083850312156129025761290161253d565b5b600061291085828601612793565b92505060206129218582860161287c565b9150509250929050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61296d82612651565b810181811067ffffffffffffffff8211171561298c5761298b612935565b5b80604052505050565b600061299f612533565b90506129ab8282612964565b919050565b600067ffffffffffffffff8211156129cb576129ca612935565b5b6129d482612651565b9050602081019050919050565b82818337600083830152505050565b6000612a036129fe846129b0565b612995565b905082815260208101848484011115612a1f57612a1e612930565b5b612a2a8482856129e1565b509392505050565b600082601f830112612a4757612a4661292b565b5b8135612a578482602086016129f0565b91505092915050565b60008060008060808587031215612a7a57612a7961253d565b5b6000612a8887828801612793565b9450506020612a9987828801612793565b9350506040612aaa878288016126de565b925050606085013567ffffffffffffffff811115612acb57612aca612542565b5b612ad787828801612a32565b91505092959194509250565b600067ffffffffffffffff821115612afe57612afd612935565b5b612b0782612651565b9050602081019050919050565b6000612b27612b2284612ae3565b612995565b905082815260208101848484011115612b4357612b42612930565b5b612b4e8482856129e1565b509392505050565b600082601f830112612b6b57612b6a61292b565b5b8135612b7b848260208601612b14565b91505092915050565b60008060408385031215612b9b57612b9a61253d565b5b600083013567ffffffffffffffff811115612bb957612bb8612542565b5b612bc585828601612b56565b925050602083013567ffffffffffffffff811115612be657612be5612542565b5b612bf285828601612b56565b9150509250929050565b60008060408385031215612c1357612c1261253d565b5b6000612c2185828601612793565b9250506020612c3285828601612793565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680612c8357607f821691505b602082108103612c9657612c95612c3c565b5b50919050565b600081519050612cab816126c7565b92915050565b600060208284031215612cc757612cc661253d565b5b6000612cd584828501612c9c565b91505092915050565b6000604082019050612cf36000830185612752565b612d0060208301846127e8565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612d41826126bd565b9150612d4c836126bd565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612d8157612d80612d07565b5b828201905092915050565b6000612d97826126bd565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612dc957612dc8612d07565b5b600182019050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612e0a60208361260d565b9150612e1582612dd4565b602082019050919050565b60006020820190508181036000830152612e3981612dfd565b9050919050565b7f4e6f742041637469766500000000000000000000000000000000000000000000600082015250565b6000612e76600a8361260d565b9150612e8182612e40565b602082019050919050565b60006020820190508181036000830152612ea581612e69565b9050919050565b7f4552433732314d657461646174613a2055524920717565727920666f72206e6f60008201527f6e6578697374656e7420746f6b656e0000000000000000000000000000000000602082015250565b6000612f08602f8361260d565b9150612f1382612eac565b604082019050919050565b60006020820190508181036000830152612f3781612efb565b9050919050565b600081905092915050565b60008190508160005260206000209050919050565b60008154612f6b81612c6b565b612f758186612f3e565b94506001821660008114612f905760018114612fa157612fd4565b60ff19831686528186019350612fd4565b612faa85612f49565b60005b83811015612fcc57815481890152600182019150602081019050612fad565b838801955050505b50505092915050565b6000612fe98284612f5e565b915081905092915050565b6000612fff82612602565b6130098185612f3e565b935061301981856020860161261e565b80840191505092915050565b60006130318285612f5e565b915061303d8284612ff4565b91508190509392505050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b60006130a560268361260d565b91506130b082613049565b604082019050919050565b600060208201905081810360008301526130d481613098565b9050919050565b600081519050919050565b600082825260208201905092915050565b6000613102826130db565b61310c81856130e6565b935061311c81856020860161261e565b61312581612651565b840191505092915050565b60006080820190506131456000830187612752565b6131526020830186612752565b61315f60408301856127e8565b818103606083015261317181846130f7565b905095945050505050565b60008151905061318b81612573565b92915050565b6000602082840312156131a7576131a661253d565b5b60006131b58482850161317c565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006131f8826126bd565b9150613203836126bd565b925082613213576132126131be565b5b828204905092915050565b6000613229826126bd565b9150613234836126bd565b92508282101561324757613246612d07565b5b828203905092915050565b600061325d826126bd565b9150613268836126bd565b925082613278576132776131be565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fdfea26469706673582212204d3147cbb2894cc9e105cff8a6451e2911fb5a8afd6e63827d4cd4d7e13d1a3164736f6c634300080d0033