60806040526109fb600a556005600b55604051806060016040528060368152602001620033db60369139600e9080519060200190620000409291906200023c565b506000600f60006101000a81548160ff0219169083151502179055506001600f60016101000a81548160ff0219169083151502179055503480156200008457600080fd5b506040518060400160405280600f81526020017f4368756262792050656e6775696e7300000000000000000000000000000000008152506040518060400160405280600281526020017f43500000000000000000000000000000000000000000000000000000000000008152508160029080519060200190620001099291906200023c565b508060039080519060200190620001229291906200023c565b50620001336200016960201b60201c565b60008190555050506200015b6200014f6200016e60201b60201c565b6200017660201b60201c565b600160098190555062000351565b600090565b600033905090565b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b8280546200024a90620002ec565b90600052602060002090601f0160209004810192826200026e5760008555620002ba565b82601f106200028957805160ff1916838001178555620002ba565b82800160010185558215620002ba579182015b82811115620002b95782518255916020019190600101906200029c565b5b509050620002c99190620002cd565b5090565b5b80821115620002e8576000816000905550600101620002ce565b5090565b600060028204905060018216806200030557607f821691505b602082108114156200031c576200031b62000322565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b61307a80620003616000396000f3fe6080604052600436106101d85760003560e01c806385fee16811610102578063bbc2756411610095578063d621a77611610064578063d621a77614610654578063e985e9c51461066b578063f2c4ce1e146106a8578063f2fde38b146106d1576101d8565b8063bbc2756414610584578063c87b56dd146105c1578063cfc86f7b146105fe578063d5abeb0114610629576101d8565b8063a22cb465116100d1578063a22cb46514610511578063a8edbdc51461053a578063ac44600214610551578063b88d4fde14610568576101d8565b806385fee168146104675780638da5cb5b1461049257806395d89b41146104bd578063a0712d68146104e8576101d8565b806342842e0e1161017a57806370a082311161014957806370a08231146103bf578063715018a6146103fc5780637501f74114610413578063783fd9221461043e576101d8565b806342842e0e14610310578063518302271461032c5780635c975abb146103575780636352211e14610382576101d8565b8063081c8c44116101b6578063081c8c4414610282578063095ea7b3146102ad57806318160ddd146102c957806323b872dd146102f4576101d8565b806301ffc9a7146101dd57806306fdde031461021a578063081812fc14610245575b600080fd5b3480156101e957600080fd5b5061020460048036038101906101ff9190612641565b6106fa565b6040516102119190612a7a565b60405180910390f35b34801561022657600080fd5b5061022f61078c565b60405161023c9190612a95565b60405180910390f35b34801561025157600080fd5b5061026c6004803603810190610267919061275c565b61081e565b6040516102799190612a13565b60405180910390f35b34801561028e57600080fd5b5061029761089d565b6040516102a49190612a95565b60405180910390f35b6102c760048036038101906102c29190612601565b61092b565b005b3480156102d557600080fd5b506102de610a6f565b6040516102eb9190612b77565b60405180910390f35b61030e600480360381019061030991906124eb565b610a86565b005b61032a600480360381019061032591906124eb565b610dab565b005b34801561033857600080fd5b50610341610dcb565b60405161034e9190612a7a565b60405180910390f35b34801561036357600080fd5b5061036c610dde565b6040516103799190612a7a565b60405180910390f35b34801561038e57600080fd5b506103a960048036038101906103a4919061275c565b610df1565b6040516103b69190612a13565b60405180910390f35b3480156103cb57600080fd5b506103e660048036038101906103e1919061247e565b610e03565b6040516103f39190612b77565b60405180910390f35b34801561040857600080fd5b50610411610ebc565b005b34801561041f57600080fd5b50610428610ed0565b6040516104359190612b77565b60405180910390f35b34801561044a57600080fd5b50610465600480360381019061046091906126e4565b610ed6565b005b34801561047357600080fd5b5061047c610f10565b6040516104899190612a95565b60405180910390f35b34801561049e57600080fd5b506104a7610f9e565b6040516104b49190612a13565b60405180910390f35b3480156104c957600080fd5b506104d2610fc8565b6040516104df9190612a95565b60405180910390f35b3480156104f457600080fd5b5061050f600480360381019061050a919061275c565b61105a565b005b34801561051d57600080fd5b50610538600480360381019061053391906125c1565b61124e565b005b34801561054657600080fd5b5061054f611359565b005b34801561055d57600080fd5b5061056661138d565b005b610582600480360381019061057d919061253e565b611454565b005b34801561059057600080fd5b506105ab60048036038101906105a6919061247e565b6114c7565b6040516105b89190612b77565b60405180910390f35b3480156105cd57600080fd5b506105e860048036038101906105e3919061275c565b6114df565b6040516105f59190612a95565b60405180910390f35b34801561060a57600080fd5b50610613611638565b6040516106209190612a95565b60405180910390f35b34801561063557600080fd5b5061063e6116c6565b60405161064b9190612b77565b60405180910390f35b34801561066057600080fd5b506106696116cc565b005b34801561067757600080fd5b50610692600480360381019061068d91906124ab565b611700565b60405161069f9190612a7a565b60405180910390f35b3480156106b457600080fd5b506106cf60048036038101906106ca919061269b565b611794565b005b3480156106dd57600080fd5b506106f860048036038101906106f3919061247e565b6117b6565b005b60006301ffc9a760e01b827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061075557506380ac58cd60e01b827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806107855750635b5e139f60e01b827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b9050919050565b60606002805461079b90612d88565b80601f01602080910402602001604051908101604052809291908181526020018280546107c790612d88565b80156108145780601f106107e957610100808354040283529160200191610814565b820191906000526020600020905b8154815290600101906020018083116107f757829003601f168201915b5050505050905090565b60006108298261183a565b61085f576040517fcf4700e400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6006600083815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600e80546108aa90612d88565b80601f01602080910402602001604051908101604052809291908181526020018280546108d690612d88565b80156109235780601f106108f857610100808354040283529160200191610923565b820191906000526020600020905b81548152906001019060200180831161090657829003601f168201915b505050505081565b600061093682610df1565b90508073ffffffffffffffffffffffffffffffffffffffff16610957611899565b73ffffffffffffffffffffffffffffffffffffffff16146109ba576109838161097e611899565b611700565b6109b9576040517fcfb3b94200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b826006600084815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550818373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a4505050565b6000610a796118a1565b6001546000540303905090565b6000610a91826118a6565b90508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610af8576040517fa114810000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080610b0484611974565b91509150610b1a8187610b15611899565b61199b565b610b6657610b2f86610b2a611899565b611700565b610b65576040517f59c896be00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415610bcd576040517fea553b3400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610bda86868660016119df565b8015610be557600082555b600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600081546001900391905081905550600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000815460010191905081905550610cb385610c8f8888876119e5565b7c020000000000000000000000000000000000000000000000000000000017611a0d565b600460008681526020019081526020016000208190555060007c020000000000000000000000000000000000000000000000000000000084161415610d3b576000600185019050600060046000838152602001908152602001600020541415610d39576000548114610d38578360046000838152602001908152602001600020819055505b5b505b838573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4610da38686866001611a38565b505050505050565b610dc683838360405180602001604052806000815250611454565b505050565b600f60009054906101000a900460ff1681565b600f60019054906101000a900460ff1681565b6000610dfc826118a6565b9050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610e6b576040517f8f4eb60400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054169050919050565b610ec4611a3e565b610ece6000611abc565b565b600b5481565b610ede611a3e565b81600c9080519060200190610ef4929190612292565b5080600d9080519060200190610f0b929190612292565b505050565b600d8054610f1d90612d88565b80601f0160208091040260200160405190810160405280929190818152602001828054610f4990612d88565b8015610f965780601f10610f6b57610100808354040283529160200191610f96565b820191906000526020600020905b815481529060010190602001808311610f7957829003601f168201915b505050505081565b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060038054610fd790612d88565b80601f016020809104026020016040519081016040528092919081815260200182805461100390612d88565b80156110505780601f1061102557610100808354040283529160200191611050565b820191906000526020600020905b81548152906001019060200180831161103357829003601f168201915b5050505050905090565b611062611b82565b600f60019054906101000a900460ff16156110b2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110a990612b17565b60405180910390fd5b600b548111156110f7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110ee90612b17565b60405180910390fd5b600b54601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054826111459190612c7c565b1115611186576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161117d90612b17565b60405180910390fd5b6000611190610a6f565b9050600a5482826111a19190612c7c565b11156111e2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111d990612b17565b60405180910390fd5b6111ec3383611bd2565b81601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461123b9190612c7c565b925050819055505061124b611bf0565b50565b806007600061125b611899565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff16611308611899565b73ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c318360405161134d9190612a7a565b60405180910390a35050565b611361611a3e565b600f60009054906101000a900460ff1615600f60006101000a81548160ff021916908315150217905550565b611395611a3e565b61139d611b82565b60003373ffffffffffffffffffffffffffffffffffffffff16476040516113c3906129fe565b60006040518083038185875af1925050503d8060008114611400576040519150601f19603f3d011682016040523d82523d6000602084013e611405565b606091505b5050905080611449576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161144090612b37565b60405180910390fd5b50611452611bf0565b565b61145f848484610a86565b60008373ffffffffffffffffffffffffffffffffffffffff163b146114c15761148a84848484611bfa565b6114c0576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b50505050565b60106020528060005260406000206000915090505481565b60606114ea8261183a565b611529576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161152090612af7565b60405180910390fd5b60001515600f60009054906101000a900460ff16151514156115d757600e805461155290612d88565b80601f016020809104026020016040519081016040528092919081815260200182805461157e90612d88565b80156115cb5780601f106115a0576101008083540402835291602001916115cb565b820191906000526020600020905b8154815290600101906020018083116115ae57829003601f168201915b50505050509050611633565b60006115e1611d5a565b90506000815111611601576040518060200160405280600081525061162f565b8061160b84611dec565b600d60405160200161161f939291906129cd565b6040516020818303038152906040525b9150505b919050565b600c805461164590612d88565b80601f016020809104026020016040519081016040528092919081815260200182805461167190612d88565b80156116be5780601f10611693576101008083540402835291602001916116be565b820191906000526020600020905b8154815290600101906020018083116116a157829003601f168201915b505050505081565b600a5481565b6116d4611a3e565b600f60019054906101000a900460ff1615600f60016101000a81548160ff021916908315150217905550565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b61179c611a3e565b80600e90805190602001906117b2929190612292565b5050565b6117be611a3e565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561182e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161182590612ab7565b60405180910390fd5b61183781611abc565b50565b6000816118456118a1565b11158015611854575060005482105b8015611892575060007c0100000000000000000000000000000000000000000000000000000000600460008581526020019081526020016000205416145b9050919050565b600033905090565b600090565b600080829050806118b56118a1565b1161193d5760005481101561193c5760006004600083815260200190815260200160002054905060007c01000000000000000000000000000000000000000000000000000000008216141561193a575b6000811415611930576004600083600190039350838152602001908152602001600020549050611905565b809250505061196f565b505b5b6040517fdf2d9b4200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b919050565b60008060006006600085815260200190815260200160002090508092508254915050915091565b600073ffffffffffffffffffffffffffffffffffffffff8316925073ffffffffffffffffffffffffffffffffffffffff821691508382148383141790509392505050565b50505050565b60008060e883901c905060e86119fc868684611ec4565b62ffffff16901b9150509392505050565b600073ffffffffffffffffffffffffffffffffffffffff83169250814260a01b178317905092915050565b50505050565b611a46611ecd565b73ffffffffffffffffffffffffffffffffffffffff16611a64610f9e565b73ffffffffffffffffffffffffffffffffffffffff1614611aba576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ab190612ad7565b60405180910390fd5b565b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60026009541415611bc8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bbf90612b57565b60405180910390fd5b6002600981905550565b611bec828260405180602001604052806000815250611ed5565b5050565b6001600981905550565b60008373ffffffffffffffffffffffffffffffffffffffff1663150b7a02611c20611899565b8786866040518563ffffffff1660e01b8152600401611c429493929190612a2e565b602060405180830381600087803b158015611c5c57600080fd5b505af1925050508015611c8d57506040513d601f19601f82011682018060405250810190611c8a919061266e565b60015b611d07573d8060008114611cbd576040519150601f19603f3d011682016040523d82523d6000602084013e611cc2565b606091505b50600081511415611cff576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050949350505050565b6060600c8054611d6990612d88565b80601f0160208091040260200160405190810160405280929190818152602001828054611d9590612d88565b8015611de25780601f10611db757610100808354040283529160200191611de2565b820191906000526020600020905b815481529060010190602001808311611dc557829003601f168201915b5050505050905090565b606060006001611dfb84611f72565b01905060008167ffffffffffffffff811115611e1a57611e19612e78565b5b6040519080825280601f01601f191660200182016040528015611e4c5781602001600182028036833780820191505090505b509050600082602001820190505b600115611eb9578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a8581611ea357611ea2612e1a565b5b0494506000851415611eb457611eb9565b611e5a565b819350505050919050565b60009392505050565b600033905090565b611edf83836120c5565b60008373ffffffffffffffffffffffffffffffffffffffff163b14611f6d57600080549050600083820390505b611f1f6000868380600101945086611bfa565b611f55576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b818110611f0c578160005414611f6a57600080fd5b50505b505050565b600080600090507a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310611fd0577a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008381611fc657611fc5612e1a565b5b0492506040810190505b6d04ee2d6d415b85acef8100000000831061200d576d04ee2d6d415b85acef8100000000838161200357612002612e1a565b5b0492506020810190505b662386f26fc10000831061203c57662386f26fc10000838161203257612031612e1a565b5b0492506010810190505b6305f5e1008310612065576305f5e100838161205b5761205a612e1a565b5b0492506008810190505b612710831061208a5761271083816120805761207f612e1a565b5b0492506004810190505b606483106120ad57606483816120a3576120a2612e1a565b5b0492506002810190505b600a83106120bc576001810190505b80915050919050565b6000805490506000821415612106576040517fb562e8dd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61211360008483856119df565b600160406001901b178202600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254019250508190555061218a8361217b60008660006119e5565b61218485612282565b17611a0d565b6004600083815260200190815260200160002081905550600080838301905073ffffffffffffffffffffffffffffffffffffffff85169150828260007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a4600183015b81811461222b57808360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a46001810190506121f0565b506000821415612267576040517f2e07630000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80600081905550505061227d6000848385611a38565b505050565b60006001821460e11b9050919050565b82805461229e90612d88565b90600052602060002090601f0160209004810192826122c05760008555612307565b82601f106122d957805160ff1916838001178555612307565b82800160010185558215612307579182015b828111156123065782518255916020019190600101906122eb565b5b5090506123149190612318565b5090565b5b80821115612331576000816000905550600101612319565b5090565b600061234861234384612bb7565b612b92565b90508281526020810184848401111561236457612363612eac565b5b61236f848285612d46565b509392505050565b600061238a61238584612be8565b612b92565b9050828152602081018484840111156123a6576123a5612eac565b5b6123b1848285612d46565b509392505050565b6000813590506123c881612fe8565b92915050565b6000813590506123dd81612fff565b92915050565b6000813590506123f281613016565b92915050565b60008151905061240781613016565b92915050565b600082601f83011261242257612421612ea7565b5b8135612432848260208601612335565b91505092915050565b600082601f8301126124505761244f612ea7565b5b8135612460848260208601612377565b91505092915050565b6000813590506124788161302d565b92915050565b60006020828403121561249457612493612eb6565b5b60006124a2848285016123b9565b91505092915050565b600080604083850312156124c2576124c1612eb6565b5b60006124d0858286016123b9565b92505060206124e1858286016123b9565b9150509250929050565b60008060006060848603121561250457612503612eb6565b5b6000612512868287016123b9565b9350506020612523868287016123b9565b925050604061253486828701612469565b9150509250925092565b6000806000806080858703121561255857612557612eb6565b5b6000612566878288016123b9565b9450506020612577878288016123b9565b935050604061258887828801612469565b925050606085013567ffffffffffffffff8111156125a9576125a8612eb1565b5b6125b58782880161240d565b91505092959194509250565b600080604083850312156125d8576125d7612eb6565b5b60006125e6858286016123b9565b92505060206125f7858286016123ce565b9150509250929050565b6000806040838503121561261857612617612eb6565b5b6000612626858286016123b9565b925050602061263785828601612469565b9150509250929050565b60006020828403121561265757612656612eb6565b5b6000612665848285016123e3565b91505092915050565b60006020828403121561268457612683612eb6565b5b6000612692848285016123f8565b91505092915050565b6000602082840312156126b1576126b0612eb6565b5b600082013567ffffffffffffffff8111156126cf576126ce612eb1565b5b6126db8482850161243b565b91505092915050565b600080604083850312156126fb576126fa612eb6565b5b600083013567ffffffffffffffff81111561271957612718612eb1565b5b6127258582860161243b565b925050602083013567ffffffffffffffff81111561274657612745612eb1565b5b6127528582860161243b565b9150509250929050565b60006020828403121561277257612771612eb6565b5b600061278084828501612469565b91505092915050565b61279281612cd2565b82525050565b6127a181612ce4565b82525050565b60006127b282612c2e565b6127bc8185612c44565b93506127cc818560208601612d55565b6127d581612ebb565b840191505092915050565b60006127eb82612c39565b6127f58185612c60565b9350612805818560208601612d55565b61280e81612ebb565b840191505092915050565b600061282482612c39565b61282e8185612c71565b935061283e818560208601612d55565b80840191505092915050565b6000815461285781612d88565b6128618186612c71565b9450600182166000811461287c576001811461288d576128c0565b60ff198316865281860193506128c0565b61289685612c19565b60005b838110156128b857815481890152600182019150602081019050612899565b838801955050505b50505092915050565b60006128d6602683612c60565b91506128e182612ecc565b604082019050919050565b60006128f9602083612c60565b915061290482612f1b565b602082019050919050565b600061291c602f83612c60565b915061292782612f44565b604082019050919050565b600061293f600083612c55565b915061294a82612f93565b600082019050919050565b6000612962600083612c60565b915061296d82612f93565b600082019050919050565b6000612985601083612c60565b915061299082612f96565b602082019050919050565b60006129a8601f83612c60565b91506129b382612fbf565b602082019050919050565b6129c781612d3c565b82525050565b60006129d98286612819565b91506129e58285612819565b91506129f1828461284a565b9150819050949350505050565b6000612a0982612932565b9150819050919050565b6000602082019050612a286000830184612789565b92915050565b6000608082019050612a436000830187612789565b612a506020830186612789565b612a5d60408301856129be565b8181036060830152612a6f81846127a7565b905095945050505050565b6000602082019050612a8f6000830184612798565b92915050565b60006020820190508181036000830152612aaf81846127e0565b905092915050565b60006020820190508181036000830152612ad0816128c9565b9050919050565b60006020820190508181036000830152612af0816128ec565b9050919050565b60006020820190508181036000830152612b108161290f565b9050919050565b60006020820190508181036000830152612b3081612955565b9050919050565b60006020820190508181036000830152612b5081612978565b9050919050565b60006020820190508181036000830152612b708161299b565b9050919050565b6000602082019050612b8c60008301846129be565b92915050565b6000612b9c612bad565b9050612ba88282612dba565b919050565b6000604051905090565b600067ffffffffffffffff821115612bd257612bd1612e78565b5b612bdb82612ebb565b9050602081019050919050565b600067ffffffffffffffff821115612c0357612c02612e78565b5b612c0c82612ebb565b9050602081019050919050565b60008190508160005260206000209050919050565b600081519050919050565b600081519050919050565b600082825260208201905092915050565b600081905092915050565b600082825260208201905092915050565b600081905092915050565b6000612c8782612d3c565b9150612c9283612d3c565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612cc757612cc6612deb565b5b828201905092915050565b6000612cdd82612d1c565b9050919050565b60008115159050919050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b82818337600083830152505050565b60005b83811015612d73578082015181840152602081019050612d58565b83811115612d82576000848401525b50505050565b60006002820490506001821680612da057607f821691505b60208210811415612db457612db3612e49565b5b50919050565b612dc382612ebb565b810181811067ffffffffffffffff82111715612de257612de1612e78565b5b80604052505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f4552433732314d657461646174613a2055524920717565727920666f72206e6f60008201527f6e6578697374656e7420746f6b656e0000000000000000000000000000000000602082015250565b50565b7f5472616e73666572206661696c65642e00000000000000000000000000000000600082015250565b7f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00600082015250565b612ff181612cd2565b8114612ffc57600080fd5b50565b61300881612ce4565b811461301357600080fd5b50565b61301f81612cf0565b811461302a57600080fd5b50565b61303681612d3c565b811461304157600080fd5b5056fea26469706673582212200bb90c6fe06b8d44545ed1ae4b41834adb575298cd7e1f9407bc47835b83fa9e64736f6c63430008070033697066733a2f2f516d645638536562456e5668467a6f35324d504e357953764d677779683262737a5357314365394a435833706d6f2f