61012060405273962228f791e745273700024d54e3f9897a3e819873ffffffffffffffffffffffffffffffffffffffff1660809073ffffffffffffffffffffffffffffffffffffffff1660601b8152506040518060400160405280600781526020017f697066733a2f2f00000000000000000000000000000000000000000000000000815250600990805190602001906200009c929190620002aa565b50661ff973cafa800060a090815250661ff973cafa800060c0908152506105dc63ffffffff1660e09063ffffffff1660e01b815250600363ffffffff166101009063ffffffff1660e01b815250348015620000f657600080fd5b506040518060400160405280600d81526020017f436f696e2041706520436c7562000000000000000000000000000000000000008152506040518060400160405280600381526020017f434143000000000000000000000000000000000000000000000000000000000081525081600290805190602001906200017b929190620002aa565b50806003908051906020019062000194929190620002aa565b50620001a5620001d360201b60201c565b6000819055505050620001cd620001c1620001dc60201b60201c565b620001e460201b60201c565b620003bf565b60006001905090565b600033905090565b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b828054620002b8906200035a565b90600052602060002090601f016020900481019282620002dc576000855562000328565b82601f10620002f757805160ff191683800117855562000328565b8280016001018555821562000328579182015b82811115620003275782518255916020019190600101906200030a565b5b5090506200033791906200033b565b5090565b5b80821115620003565760008160009055506001016200033c565b5090565b600060028204905060018216806200037357607f821691505b602082108114156200038a576200038962000390565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60805160601c60a05160c05160e05160e01c6101005160e01c6135fa6200043e60003960006112ee015260008181610e0001528181610e3f01526111b2015260008181610d9d015261118e015260008181610a980152610ebb015260008181610bf701528181611c68015281816121bd015261224601526135fa6000f3fe6080604052600436106101665760003560e01c806370a08231116100d1578063b88d4fde1161008a578063d5abeb0111610064578063d5abeb011461051b578063e985e9c514610546578063f2fde38b14610583578063f968adbe146105ac57610166565b8063b88d4fde1461048a578063c87b56dd146104b3578063c9215b1e146104f057610166565b806370a08231146103895780638da5cb5b146103c657806395d89b41146103f15780639b642de11461041c5780639fb17e3414610445578063a22cb4651461046157610166565b80633ccfd60b116101235780633ccfd60b1461028d57806342842e0e146102a457806342966c68146102cd57806362b99ad4146102f65780636352211e146103215780636817c76c1461035e57610166565b806301ffc9a71461016b57806306fdde03146101a8578063081812fc146101d3578063095ea7b31461021057806318160ddd1461023957806323b872dd14610264575b600080fd5b34801561017757600080fd5b50610192600480360381019061018d9190612ab7565b6105d7565b60405161019f9190612dfb565b60405180910390f35b3480156101b457600080fd5b506101bd6106b9565b6040516101ca9190612e16565b60405180910390f35b3480156101df57600080fd5b506101fa60048036038101906101f59190612b5a565b61074b565b6040516102079190612d94565b60405180910390f35b34801561021c57600080fd5b5061023760048036038101906102329190612a77565b6107c7565b005b34801561024557600080fd5b5061024e6108d2565b60405161025b9190612ef8565b60405180910390f35b34801561027057600080fd5b5061028b60048036038101906102869190612961565b6108e9565b005b34801561029957600080fd5b506102a26108f9565b005b3480156102b057600080fd5b506102cb60048036038101906102c69190612961565b6109be565b005b3480156102d957600080fd5b506102f460048036038101906102ef9190612b5a565b6109de565b005b34801561030257600080fd5b5061030b6109f2565b6040516103189190612e16565b60405180910390f35b34801561032d57600080fd5b5061034860048036038101906103439190612b5a565b610a80565b6040516103559190612d94565b60405180910390f35b34801561036a57600080fd5b50610373610a96565b6040516103809190612ef8565b60405180910390f35b34801561039557600080fd5b506103b060048036038101906103ab91906128f4565b610aba565b6040516103bd9190612ef8565b60405180910390f35b3480156103d257600080fd5b506103db610c4f565b6040516103e89190612d94565b60405180910390f35b3480156103fd57600080fd5b50610406610c79565b6040516104139190612e16565b60405180910390f35b34801561042857600080fd5b50610443600480360381019061043e9190612b11565b610d0b565b005b61045f600480360381019061045a9190612b5a565b610d2d565b005b34801561046d57600080fd5b5061048860048036038101906104839190612a37565b610ef9565b005b34801561049657600080fd5b506104b160048036038101906104ac91906129b4565b611071565b005b3480156104bf57600080fd5b506104da60048036038101906104d59190612b5a565b6110ed565b6040516104e79190612e16565b60405180910390f35b3480156104fc57600080fd5b5061050561118c565b6040516105129190612ef8565b60405180910390f35b34801561052757600080fd5b506105306111b0565b60405161053d9190612f13565b60405180910390f35b34801561055257600080fd5b5061056d60048036038101906105689190612921565b6111d4565b60405161057a9190612dfb565b60405180910390f35b34801561058f57600080fd5b506105aa60048036038101906105a591906128f4565b611268565b005b3480156105b857600080fd5b506105c16112ec565b6040516105ce9190612f13565b60405180910390f35b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806106a257507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806106b257506106b182611310565b5b9050919050565b6060600280546106c89061325c565b80601f01602080910402602001604051908101604052809291908181526020018280546106f49061325c565b80156107415780601f1061071657610100808354040283529160200191610741565b820191906000526020600020905b81548152906001019060200180831161072457829003601f168201915b5050505050905090565b60006107568261137a565b61078c576040517fcf4700e400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6006600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b60006107d282610a80565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561083a576040517f943f7b8c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166108596113c8565b73ffffffffffffffffffffffffffffffffffffffff161415801561088b5750610889816108846113c8565b6111d4565b155b156108c2576040517fcfb3b94200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6108cd8383836113d0565b505050565b60006108dc611482565b6001546000540303905090565b6108f483838361148b565b505050565b61090161197c565b6000479050600033905060008173ffffffffffffffffffffffffffffffffffffffff168360405161093190612d7f565b60006040518083038185875af1925050503d806000811461096e576040519150601f19603f3d011682016040523d82523d6000602084013e610973565b606091505b505080915050806109b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109b090612e78565b60405180910390fd5b505050565b6109d983838360405180602001604052806000815250611071565b505050565b6109e661197c565b6109ef816119fa565b50565b600980546109ff9061325c565b80601f0160208091040260200160405190810160405280929190818152602001828054610a2b9061325c565b8015610a785780601f10610a4d57610100808354040283529160200191610a78565b820191906000526020600020905b815481529060010190602001808311610a5b57829003601f168201915b505050505081565b6000610a8b82611a06565b600001519050919050565b7f000000000000000000000000000000000000000000000000000000000000000081565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610b22576040517f8f4eb60400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900467ffffffffffffffff1667ffffffffffffffff1614610bf257600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900467ffffffffffffffff1667ffffffffffffffff169050610c4a565b6000547f000000000000000000000000000000000000000000000000000000000000000083610c21919061312e565b73ffffffffffffffffffffffffffffffffffffffff1611610c455760019050610c4a565b600090505b919050565b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060038054610c889061325c565b80601f0160208091040260200160405190810160405280929190818152602001828054610cb49061325c565b8015610d015780601f10610cd657610100808354040283529160200191610d01565b820191906000526020600020905b815481529060010190602001808311610ce457829003601f168201915b5050505050905090565b610d1361197c565b8060099080519060200190610d299291906126c5565b5050565b3373ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff1614610d9b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d9290612eb8565b60405180910390fd5b7f0000000000000000000000000000000000000000000000000000000000000000341015610dfe576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610df590612e38565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000063ffffffff1681610e2e6108d2565b610e38919061304d565b11610ef6577f000000000000000000000000000000000000000000000000000000000000000063ffffffff1681610e6d6108d2565b610e77919061304d565b1115610eb8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eaf90612e98565b60405180910390fd5b807f0000000000000000000000000000000000000000000000000000000000000000610ee491906130d4565b3410610ef557610ef43382611d03565b5b5b50565b610f016113c8565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610f66576040517fb06307db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8060076000610f736113c8565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff166110206113c8565b73ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31836040516110659190612dfb565b60405180910390a35050565b61107c84848461148b565b61109b8373ffffffffffffffffffffffffffffffffffffffff16611d21565b80156110b057506110ae84848484611d44565b155b156110e7576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50505050565b60606110f88261137a565b61112e576040517fa14c4b5000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000611138611ea4565b90506000815114156111595760405180602001604052806000815250611184565b8061116384611f36565b604051602001611174929190612d5b565b6040516020818303038152906040525b915050919050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b61127061197c565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156112e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112d790612e58565b60405180910390fd5b6112e981612097565b50565b7f000000000000000000000000000000000000000000000000000000000000000081565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b600081611385611482565b11158015611394575060005482105b80156113c1575060046000838152602001908152602001600020600001601c9054906101000a900460ff16155b9050919050565b600033905090565b826006600084815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550818373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a4505050565b60006001905090565b600061149682611a06565b90506000816000015173ffffffffffffffffffffffffffffffffffffffff166114bd6113c8565b73ffffffffffffffffffffffffffffffffffffffff1614806114f057506114ef82600001516114ea6113c8565b6111d4565b5b8061153557506114fe6113c8565b73ffffffffffffffffffffffffffffffffffffffff1661151d8461074b565b73ffffffffffffffffffffffffffffffffffffffff16145b90508061156e576040517f59c896be00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8473ffffffffffffffffffffffffffffffffffffffff16826000015173ffffffffffffffffffffffffffffffffffffffff16146115d7576040517fa114810000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141561163e576040517fea553b3400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61164b858585600161215d565b61165b60008484600001516113d0565b6001600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160008282829054906101000a900467ffffffffffffffff160392506101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506001600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160008282829054906101000a900467ffffffffffffffff160192506101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550836004600085815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550426004600085815260200190815260200160002060000160146101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506000600184019050600073ffffffffffffffffffffffffffffffffffffffff166004600083815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561190c5760005481101561190b5782600001516004600083815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555082602001516004600083815260200190815260200160002060000160146101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055505b5b50828473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46119758585856001612163565b5050505050565b6119846113c8565b73ffffffffffffffffffffffffffffffffffffffff166119a2610c4f565b73ffffffffffffffffffffffffffffffffffffffff16146119f8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119ef90612ed8565b60405180910390fd5b565b611a0381612169565b50565b611a0e61274b565b600082905080611a1c611482565b11158015611a2b575060005481105b15611ccc576000600460008381526020019081526020016000206040518060600160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016000820160149054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200160008201601c9054906101000a900460ff16151515158152505090508060400151611cca57600073ffffffffffffffffffffffffffffffffffffffff16816000015173ffffffffffffffffffffffffffffffffffffffff1614611b40578092505050611cfe565b6000600990505b828060019003935050600460008481526020019081526020016000206040518060600160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016000820160149054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200160008201601c9054906101000a900460ff1615151515815250509150600073ffffffffffffffffffffffffffffffffffffffff16826000015173ffffffffffffffffffffffffffffffffffffffff1614611c5657819350505050611cfe565b6000816001900391508111611b4757847f000000000000000000000000000000000000000000000000000000000000000001826000019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050819350505050611cfe565b505b6040517fdf2d9b4200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b919050565b611d1d8282604051806020016040528060008152506122e5565b5050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b60008373ffffffffffffffffffffffffffffffffffffffff1663150b7a02611d6a6113c8565b8786866040518563ffffffff1660e01b8152600401611d8c9493929190612daf565b602060405180830381600087803b158015611da657600080fd5b505af1925050508015611dd757506040513d601f19601f82011682018060405250810190611dd49190612ae4565b60015b611e51573d8060008114611e07576040519150601f19603f3d011682016040523d82523d6000602084013e611e0c565b606091505b50600081511415611e49576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050949350505050565b606060098054611eb39061325c565b80601f0160208091040260200160405190810160405280929190818152602001828054611edf9061325c565b8015611f2c5780601f10611f0157610100808354040283529160200191611f2c565b820191906000526020600020905b815481529060010190602001808311611f0f57829003601f168201915b5050505050905090565b60606000821415611f7e576040518060400160405280600181526020017f30000000000000000000000000000000000000000000000000000000000000008152509050612092565b600082905060005b60008214611fb0578080611f99906132bf565b915050600a82611fa991906130a3565b9150611f86565b60008167ffffffffffffffff811115611fcc57611fcb6133f5565b5b6040519080825280601f01601f191660200182016040528015611ffe5781602001600182028036833780820191505090505b5090505b6000851461208b576001826120179190613162565b9150600a856120269190613308565b6030612032919061304d565b60f81b818381518110612048576120476133c6565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a8561208491906130a3565b9450612002565b8093505050505b919050565b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b50505050565b50505050565b60008114156121a4576040517fb562e8dd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080549050600082826121b8919061304d565b9050817f00000000000000000000000000000000000000000000000000000000000000006121e69190613003565b600460008054815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b81806001019250827f00000000000000000000000000000000000000000000000000000000000000000173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a48082141561223c57826000808282546122d9919061304d565b92505081905550505050565b6122f283838360016122f7565b505050565b600080549050600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415612364576040517f2e07630000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600084141561239f576040517fb562e8dd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6123ac600086838761215d565b83600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160008282829054906101000a900467ffffffffffffffff160192506101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555083600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160088282829054906101000a900467ffffffffffffffff160192506101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550846004600083815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550426004600083815260200190815260200160002060000160146101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555060008190506000858201905083801561257657506125758773ffffffffffffffffffffffffffffffffffffffff16611d21565b5b1561263c575b818773ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46125eb6000888480600101955088611d44565b612621576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8082141561257c57826000541461263757600080fd5b6126a8565b5b818060010192508773ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a48082141561263d575b8160008190555050506126be6000868387612163565b5050505050565b8280546126d19061325c565b90600052602060002090601f0160209004810192826126f3576000855561273a565b82601f1061270c57805160ff191683800117855561273a565b8280016001018555821561273a579182015b8281111561273957825182559160200191906001019061271e565b5b509050612747919061278e565b5090565b6040518060600160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600067ffffffffffffffff1681526020016000151581525090565b5b808211156127a757600081600090555060010161278f565b5090565b60006127be6127b984612f53565b612f2e565b9050828152602081018484840111156127da576127d9613429565b5b6127e584828561321a565b509392505050565b60006128006127fb84612f84565b612f2e565b90508281526020810184848401111561281c5761281b613429565b5b61282784828561321a565b509392505050565b60008135905061283e81613568565b92915050565b6000813590506128538161357f565b92915050565b60008135905061286881613596565b92915050565b60008151905061287d81613596565b92915050565b600082601f83011261289857612897613424565b5b81356128a88482602086016127ab565b91505092915050565b600082601f8301126128c6576128c5613424565b5b81356128d68482602086016127ed565b91505092915050565b6000813590506128ee816135ad565b92915050565b60006020828403121561290a57612909613433565b5b60006129188482850161282f565b91505092915050565b6000806040838503121561293857612937613433565b5b60006129468582860161282f565b92505060206129578582860161282f565b9150509250929050565b60008060006060848603121561297a57612979613433565b5b60006129888682870161282f565b93505060206129998682870161282f565b92505060406129aa868287016128df565b9150509250925092565b600080600080608085870312156129ce576129cd613433565b5b60006129dc8782880161282f565b94505060206129ed8782880161282f565b93505060406129fe878288016128df565b925050606085013567ffffffffffffffff811115612a1f57612a1e61342e565b5b612a2b87828801612883565b91505092959194509250565b60008060408385031215612a4e57612a4d613433565b5b6000612a5c8582860161282f565b9250506020612a6d85828601612844565b9150509250929050565b60008060408385031215612a8e57612a8d613433565b5b6000612a9c8582860161282f565b9250506020612aad858286016128df565b9150509250929050565b600060208284031215612acd57612acc613433565b5b6000612adb84828501612859565b91505092915050565b600060208284031215612afa57612af9613433565b5b6000612b088482850161286e565b91505092915050565b600060208284031215612b2757612b26613433565b5b600082013567ffffffffffffffff811115612b4557612b4461342e565b5b612b51848285016128b1565b91505092915050565b600060208284031215612b7057612b6f613433565b5b6000612b7e848285016128df565b91505092915050565b612b9081613196565b82525050565b612b9f816131a8565b82525050565b6000612bb082612fb5565b612bba8185612fcb565b9350612bca818560208601613229565b612bd381613438565b840191505092915050565b6000612be982612fc0565b612bf38185612fe7565b9350612c03818560208601613229565b612c0c81613438565b840191505092915050565b6000612c2282612fc0565b612c2c8185612ff8565b9350612c3c818560208601613229565b80840191505092915050565b6000612c55600c83612fe7565b9150612c6082613449565b602082019050919050565b6000612c78602683612fe7565b9150612c8382613472565b604082019050919050565b6000612c9b601883612fe7565b9150612ca6826134c1565b602082019050919050565b6000612cbe600883612fe7565b9150612cc9826134ea565b602082019050919050565b6000612ce1601e83612fe7565b9150612cec82613513565b602082019050919050565b6000612d04602083612fe7565b9150612d0f8261353c565b602082019050919050565b6000612d27600083612fdc565b9150612d3282613565565b600082019050919050565b612d4681613200565b82525050565b612d558161320a565b82525050565b6000612d678285612c17565b9150612d738284612c17565b91508190509392505050565b6000612d8a82612d1a565b9150819050919050565b6000602082019050612da96000830184612b87565b92915050565b6000608082019050612dc46000830187612b87565b612dd16020830186612b87565b612dde6040830185612d3d565b8181036060830152612df08184612ba5565b905095945050505050565b6000602082019050612e106000830184612b96565b92915050565b60006020820190508181036000830152612e308184612bde565b905092915050565b60006020820190508181036000830152612e5181612c48565b9050919050565b60006020820190508181036000830152612e7181612c6b565b9050919050565b60006020820190508181036000830152612e9181612c8e565b9050919050565b60006020820190508181036000830152612eb181612cb1565b9050919050565b60006020820190508181036000830152612ed181612cd4565b9050919050565b60006020820190508181036000830152612ef181612cf7565b9050919050565b6000602082019050612f0d6000830184612d3d565b92915050565b6000602082019050612f286000830184612d4c565b92915050565b6000612f38612f49565b9050612f44828261328e565b919050565b6000604051905090565b600067ffffffffffffffff821115612f6e57612f6d6133f5565b5b612f7782613438565b9050602081019050919050565b600067ffffffffffffffff821115612f9f57612f9e6133f5565b5b612fa882613438565b9050602081019050919050565b600081519050919050565b600081519050919050565b600082825260208201905092915050565b600081905092915050565b600082825260208201905092915050565b600081905092915050565b600061300e826131e0565b9150613019836131e0565b92508273ffffffffffffffffffffffffffffffffffffffff0382111561304257613041613339565b5b828201905092915050565b600061305882613200565b915061306383613200565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561309857613097613339565b5b828201905092915050565b60006130ae82613200565b91506130b983613200565b9250826130c9576130c8613368565b5b828204905092915050565b60006130df82613200565b91506130ea83613200565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561312357613122613339565b5b828202905092915050565b6000613139826131e0565b9150613144836131e0565b92508282101561315757613156613339565b5b828203905092915050565b600061316d82613200565b915061317883613200565b92508282101561318b5761318a613339565b5b828203905092915050565b60006131a1826131e0565b9050919050565b60008115159050919050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600063ffffffff82169050919050565b82818337600083830152505050565b60005b8381101561324757808201518184015260208101905061322c565b83811115613256576000848401525b50505050565b6000600282049050600182168061327457607f821691505b6020821081141561328857613287613397565b5b50919050565b61329782613438565b810181811067ffffffffffffffff821117156132b6576132b56133f5565b5b80604052505050565b60006132ca82613200565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156132fd576132fc613339565b5b600182019050919050565b600061331382613200565b915061331e83613200565b92508261332e5761332d613368565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f696e73756666696369656e740000000000000000000000000000000000000000600082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f5472616e73616374696f6e20556e7375636365737366756c0000000000000000600082015250565b7f736f6c64206f7574000000000000000000000000000000000000000000000000600082015250565b7f5468652063616c6c657220697320616e6f7468657220636f6e74726163740000600082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b50565b61357181613196565b811461357c57600080fd5b50565b613588816131a8565b811461359357600080fd5b50565b61359f816131b4565b81146135aa57600080fd5b50565b6135b681613200565b81146135c157600080fd5b5056fea264697066735822122075b1d6e19cdf08180c791cc6b844100f028b9c17b32c35265b17b762eeaffbd764736f6c63430008070033