60806040526000600b60006101000a81548160ff0219169083151502179055506115b3600c556001600d556005600e55666a94d74f430000600f553480156200004757600080fd5b506040518060400160405280600b81526020017f41737472616c4672656e730000000000000000000000000000000000000000008152506040518060400160405280600681526020017f41535452414c00000000000000000000000000000000000000000000000000008152508160029080519060200190620000cc929190620001ff565b508060039080519060200190620000e5929190620001ff565b50620000f66200012c60201b60201c565b60008190555050506200011e620001126200013160201b60201c565b6200013960201b60201c565b600160098190555062000314565b600090565b600033905090565b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b8280546200020d90620002af565b90600052602060002090601f0160209004810192826200023157600085556200027d565b82601f106200024c57805160ff19168380011785556200027d565b828001600101855582156200027d579182015b828111156200027c5782518255916020019190600101906200025f565b5b5090506200028c919062000290565b5090565b5b80821115620002ab57600081600090555060010162000291565b5090565b60006002820490506001821680620002c857607f821691505b60208210811415620002df57620002de620002e5565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b612f6980620003246000396000f3fe6080604052600436106101d85760003560e01c8063738f99e611610102578063b7294bc011610095578063cf00b56311610064578063cf00b56314610689578063e985e9c5146106b2578063f0b1292a146106ef578063f2fde38b1461072c576101d8565b8063b7294bc0146105cf578063b88d4fde146105f8578063c51f82a314610621578063c87b56dd1461064c576101d8565b806395d89b41116100d157806395d89b41146105275780639e6d65a414610552578063a035b1fe1461057b578063a22cb465146105a6576101d8565b8063738f99e61461048c57806380b63e7e146104b75780638cb68071146104e05780638da5cb5b146104fc576101d8565b806342842e0e1161017a578063608aadc811610149578063608aadc8146103d05780636352211e146103fb57806370a0823114610438578063715018a614610475576101d8565b806342842e0e1461032857806350ea70c21461035157806353ab6e561461037c578063586f1489146103a7576101d8565b8063095ea7b3116101b6578063095ea7b3146102825780631112b323146102ab57806318160ddd146102d457806323b872dd146102ff576101d8565b806301ffc9a7146101dd57806306fdde031461021a578063081812fc14610245575b600080fd5b3480156101e957600080fd5b5061020460048036038101906101ff9190612699565b610755565b6040516102119190612973565b60405180910390f35b34801561022657600080fd5b5061022f6107e7565b60405161023c919061298e565b60405180910390f35b34801561025157600080fd5b5061026c6004803603810190610267919061273c565b610879565b604051610279919061290c565b60405180910390f35b34801561028e57600080fd5b506102a960048036038101906102a4919061262c565b6108f5565b005b3480156102b757600080fd5b506102d260048036038101906102cd919061266c565b610a9c565b005b3480156102e057600080fd5b506102e9610b35565b6040516102f69190612a50565b60405180910390f35b34801561030b57600080fd5b5061032660048036038101906103219190612516565b610b4c565b005b34801561033457600080fd5b5061034f600480360381019061034a9190612516565b610b5c565b005b34801561035d57600080fd5b50610366610b7c565b6040516103739190612a50565b60405180910390f35b34801561038857600080fd5b50610391610b82565b60405161039e919061298e565b60405180910390f35b3480156103b357600080fd5b506103ce60048036038101906103c9919061262c565b610c10565b005b3480156103dc57600080fd5b506103e5610cc1565b6040516103f29190612a50565b60405180910390f35b34801561040757600080fd5b50610422600480360381019061041d919061273c565b610cc7565b60405161042f919061290c565b60405180910390f35b34801561044457600080fd5b5061045f600480360381019061045a91906124a9565b610cd9565b60405161046c9190612a50565b60405180910390f35b34801561048157600080fd5b5061048a610d92565b005b34801561049857600080fd5b506104a1610e1a565b6040516104ae9190612973565b60405180910390f35b3480156104c357600080fd5b506104de60048036038101906104d9919061273c565b610e2d565b005b6104fa60048036038101906104f5919061273c565b610f06565b005b34801561050857600080fd5b50610511611134565b60405161051e919061290c565b60405180910390f35b34801561053357600080fd5b5061053c61115e565b604051610549919061298e565b60405180910390f35b34801561055e57600080fd5b50610579600480360381019061057491906126f3565b6111f0565b005b34801561058757600080fd5b50610590611286565b60405161059d9190612a50565b60405180910390f35b3480156105b257600080fd5b506105cd60048036038101906105c891906125ec565b61128c565b005b3480156105db57600080fd5b506105f660048036038101906105f1919061273c565b611404565b005b34801561060457600080fd5b5061061f600480360381019061061a9190612569565b61148a565b005b34801561062d57600080fd5b506106366114fd565b6040516106439190612a50565b60405180910390f35b34801561065857600080fd5b50610673600480360381019061066e919061273c565b611503565b604051610680919061298e565b60405180910390f35b34801561069557600080fd5b506106b060048036038101906106ab919061273c565b6115a2565b005b3480156106be57600080fd5b506106d960048036038101906106d491906124d6565b611628565b6040516106e69190612973565b60405180910390f35b3480156106fb57600080fd5b50610716600480360381019061071191906124a9565b6116bc565b6040516107239190612a50565b60405180910390f35b34801561073857600080fd5b50610753600480360381019061074e91906124a9565b6116d4565b005b60006301ffc9a760e01b827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806107b057506380ac58cd60e01b827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806107e05750635b5e139f60e01b827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b9050919050565b6060600280546107f690612ccf565b80601f016020809104026020016040519081016040528092919081815260200182805461082290612ccf565b801561086f5780601f106108445761010080835404028352916020019161086f565b820191906000526020600020905b81548152906001019060200180831161085257829003601f168201915b5050505050905090565b6000610884826117cc565b6108ba576040517fcf4700e400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6006600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b60006109008261182b565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610968576040517f943f7b8c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166109876118f9565b73ffffffffffffffffffffffffffffffffffffffff16146109ea576109b3816109ae6118f9565b611628565b6109e9576040517fcfb3b94200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b826006600084815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550818373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a4505050565b610aa4611901565b73ffffffffffffffffffffffffffffffffffffffff16610ac2611134565b73ffffffffffffffffffffffffffffffffffffffff1614610b18576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b0f90612a10565b60405180910390fd5b80600b60006101000a81548160ff02191690831515021790555050565b6000610b3f611909565b6001546000540303905090565b610b5783838361190e565b505050565b610b778383836040518060200160405280600081525061148a565b505050565b600d5481565b600a8054610b8f90612ccf565b80601f0160208091040260200160405190810160405280929190818152602001828054610bbb90612ccf565b8015610c085780601f10610bdd57610100808354040283529160200191610c08565b820191906000526020600020905b815481529060010190602001808311610beb57829003601f168201915b505050505081565b610c18611901565b73ffffffffffffffffffffffffffffffffffffffff16610c36611134565b73ffffffffffffffffffffffffffffffffffffffff1614610c8c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c8390612a10565b60405180910390fd5b6000610c96610b35565b9050600c548282610ca79190612b35565b1115610cb257600080fd5b610cbc8383611cb8565b505050565b600e5481565b6000610cd28261182b565b9050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610d41576040517f8f4eb60400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054169050919050565b610d9a611901565b73ffffffffffffffffffffffffffffffffffffffff16610db8611134565b73ffffffffffffffffffffffffffffffffffffffff1614610e0e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e0590612a10565b60405180910390fd5b610e186000611cd6565b565b600b60009054906101000a900460ff1681565b610e35611901565b73ffffffffffffffffffffffffffffffffffffffff16610e53611134565b73ffffffffffffffffffffffffffffffffffffffff1614610ea9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ea090612a10565b60405180910390fd5b600047905080821115610ebb57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f19350505050158015610f01573d6000803e3d6000fd5b505050565b600081600f54610f169190612b8b565b90506000610f22610b35565b9050600b60009054906101000a900460ff16610f3d57600080fd5b600e54831115610f82576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f79906129d0565b60405180910390fd5b600e54601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410611005576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ffc906129f0565b60405180910390fd5b600c5483826110149190612b35565b111561101f57600080fd5b600d54601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561108c576000600d54846110789190612be5565b905080600f546110889190612b8b565b9250505b813410156110cf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110c690612a30565b60405180910390fd5b6110d93384611cb8565b82601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546111289190612b35565b92505081905550505050565b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606003805461116d90612ccf565b80601f016020809104026020016040519081016040528092919081815260200182805461119990612ccf565b80156111e65780601f106111bb576101008083540402835291602001916111e6565b820191906000526020600020905b8154815290600101906020018083116111c957829003601f168201915b5050505050905090565b6111f8611901565b73ffffffffffffffffffffffffffffffffffffffff16611216611134565b73ffffffffffffffffffffffffffffffffffffffff161461126c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161126390612a10565b60405180910390fd5b80600a90805190602001906112829291906122bd565b5050565b600f5481565b6112946118f9565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156112f9576040517fb06307db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80600760006113066118f9565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff166113b36118f9565b73ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31836040516113f89190612973565b60405180910390a35050565b61140c611901565b73ffffffffffffffffffffffffffffffffffffffff1661142a611134565b73ffffffffffffffffffffffffffffffffffffffff1614611480576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161147790612a10565b60405180910390fd5b80600d8190555050565b61149584848461190e565b60008373ffffffffffffffffffffffffffffffffffffffff163b146114f7576114c084848484611d9c565b6114f6576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b50505050565b600c5481565b606061150e826117cc565b611544576040517fa14c4b5000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061154e611efc565b905060008151141561156f576040518060200160405280600081525061159a565b8061157984611f8e565b60405160200161158a9291906128e8565b6040516020818303038152906040525b915050919050565b6115aa611901565b73ffffffffffffffffffffffffffffffffffffffff166115c8611134565b73ffffffffffffffffffffffffffffffffffffffff161461161e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161161590612a10565b60405180910390fd5b80600e8190555050565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60106020528060005260406000206000915090505481565b6116dc611901565b73ffffffffffffffffffffffffffffffffffffffff166116fa611134565b73ffffffffffffffffffffffffffffffffffffffff1614611750576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161174790612a10565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156117c0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117b7906129b0565b60405180910390fd5b6117c981611cd6565b50565b6000816117d7611909565b111580156117e6575060005482105b8015611824575060007c0100000000000000000000000000000000000000000000000000000000600460008581526020019081526020016000205416145b9050919050565b6000808290508061183a611909565b116118c2576000548110156118c15760006004600083815260200190815260200160002054905060007c0100000000000000000000000000000000000000000000000000000000821614156118bf575b60008114156118b557600460008360019003935083815260200190815260200160002054905061188a565b80925050506118f4565b505b5b6040517fdf2d9b4200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b919050565b600033905090565b600033905090565b600090565b60006119198261182b565b90508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614611980576040517fa114810000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008473ffffffffffffffffffffffffffffffffffffffff166119a16118f9565b73ffffffffffffffffffffffffffffffffffffffff1614806119d057506119cf856119ca6118f9565b611628565b5b80611a1557506119de6118f9565b73ffffffffffffffffffffffffffffffffffffffff166119fd84610879565b73ffffffffffffffffffffffffffffffffffffffff16145b905080611a4e576040517f59c896be00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415611ab5576040517fea553b3400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611ac28585856001611fe8565b6006600084815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600081546001900391905081905550600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008154600101919050819055507c020000000000000000000000000000000000000000000000000000000060a042901b611bbf86611fee565b1717600460008581526020019081526020016000208190555060007c020000000000000000000000000000000000000000000000000000000083161415611c49576000600184019050600060046000838152602001908152602001600020541415611c47576000548114611c46578260046000838152602001908152602001600020819055505b5b505b828473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4611cb18585856001611ff8565b5050505050565b611cd2828260405180602001604052806000815250611ffe565b5050565b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60008373ffffffffffffffffffffffffffffffffffffffff1663150b7a02611dc26118f9565b8786866040518563ffffffff1660e01b8152600401611de49493929190612927565b602060405180830381600087803b158015611dfe57600080fd5b505af1925050508015611e2f57506040513d601f19601f82011682018060405250810190611e2c91906126c6565b60015b611ea9573d8060008114611e5f576040519150601f19603f3d011682016040523d82523d6000602084013e611e64565b606091505b50600081511415611ea1576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050949350505050565b6060600a8054611f0b90612ccf565b80601f0160208091040260200160405190810160405280929190818152602001828054611f3790612ccf565b8015611f845780601f10611f5957610100808354040283529160200191611f84565b820191906000526020600020905b815481529060010190602001808311611f6757829003601f168201915b5050505050905090565b60606080604051019050806040528082600183039250600a81066030018353600a810490505b8015611fd457600183039250600a81066030018353600a81049050611fb4565b508181036020830392508083525050919050565b50505050565b6000819050919050565b50505050565b600080549050600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141561206b576040517f2e07630000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008314156120a6576040517fb562e8dd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6120b36000858386611fe8565b600160406001901b178302600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254019250508190555060e1612118600185146122b3565b901b60a042901b61212886611fee565b1717600460008381526020019081526020016000208190555060008190506000848201905060008673ffffffffffffffffffffffffffffffffffffffff163b1461222c575b818673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46121dc6000878480600101955087611d9c565b612212576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80821061216d57826000541461222757600080fd5b612297565b5b818060010192508673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a480821061222d575b8160008190555050506122ad6000858386611ff8565b50505050565b6000819050919050565b8280546122c990612ccf565b90600052602060002090601f0160209004810192826122eb5760008555612332565b82601f1061230457805160ff1916838001178555612332565b82800160010185558215612332579182015b82811115612331578251825591602001919060010190612316565b5b50905061233f9190612343565b5090565b5b8082111561235c576000816000905550600101612344565b5090565b600061237361236e84612a90565b612a6b565b90508281526020810184848401111561238f5761238e612dc4565b5b61239a848285612c8d565b509392505050565b60006123b56123b084612ac1565b612a6b565b9050828152602081018484840111156123d1576123d0612dc4565b5b6123dc848285612c8d565b509392505050565b6000813590506123f381612ed7565b92915050565b60008135905061240881612eee565b92915050565b60008135905061241d81612f05565b92915050565b60008151905061243281612f05565b92915050565b600082601f83011261244d5761244c612dbf565b5b813561245d848260208601612360565b91505092915050565b600082601f83011261247b5761247a612dbf565b5b813561248b8482602086016123a2565b91505092915050565b6000813590506124a381612f1c565b92915050565b6000602082840312156124bf576124be612dce565b5b60006124cd848285016123e4565b91505092915050565b600080604083850312156124ed576124ec612dce565b5b60006124fb858286016123e4565b925050602061250c858286016123e4565b9150509250929050565b60008060006060848603121561252f5761252e612dce565b5b600061253d868287016123e4565b935050602061254e868287016123e4565b925050604061255f86828701612494565b9150509250925092565b6000806000806080858703121561258357612582612dce565b5b6000612591878288016123e4565b94505060206125a2878288016123e4565b93505060406125b387828801612494565b925050606085013567ffffffffffffffff8111156125d4576125d3612dc9565b5b6125e087828801612438565b91505092959194509250565b6000806040838503121561260357612602612dce565b5b6000612611858286016123e4565b9250506020612622858286016123f9565b9150509250929050565b6000806040838503121561264357612642612dce565b5b6000612651858286016123e4565b925050602061266285828601612494565b9150509250929050565b60006020828403121561268257612681612dce565b5b6000612690848285016123f9565b91505092915050565b6000602082840312156126af576126ae612dce565b5b60006126bd8482850161240e565b91505092915050565b6000602082840312156126dc576126db612dce565b5b60006126ea84828501612423565b91505092915050565b60006020828403121561270957612708612dce565b5b600082013567ffffffffffffffff81111561272757612726612dc9565b5b61273384828501612466565b91505092915050565b60006020828403121561275257612751612dce565b5b600061276084828501612494565b91505092915050565b61277281612c19565b82525050565b61278181612c2b565b82525050565b600061279282612af2565b61279c8185612b08565b93506127ac818560208601612c9c565b6127b581612dd3565b840191505092915050565b60006127cb82612afd565b6127d58185612b19565b93506127e5818560208601612c9c565b6127ee81612dd3565b840191505092915050565b600061280482612afd565b61280e8185612b2a565b935061281e818560208601612c9c565b80840191505092915050565b6000612837602683612b19565b915061284282612de4565b604082019050919050565b600061285a601583612b19565b915061286582612e33565b602082019050919050565b600061287d601683612b19565b915061288882612e5c565b602082019050919050565b60006128a0602083612b19565b91506128ab82612e85565b602082019050919050565b60006128c3601283612b19565b91506128ce82612eae565b602082019050919050565b6128e281612c83565b82525050565b60006128f482856127f9565b915061290082846127f9565b91508190509392505050565b60006020820190506129216000830184612769565b92915050565b600060808201905061293c6000830187612769565b6129496020830186612769565b61295660408301856128d9565b81810360608301526129688184612787565b905095945050505050565b60006020820190506129886000830184612778565b92915050565b600060208201905081810360008301526129a881846127c0565b905092915050565b600060208201905081810360008301526129c98161282a565b9050919050565b600060208201905081810360008301526129e98161284d565b9050919050565b60006020820190508181036000830152612a0981612870565b9050919050565b60006020820190508181036000830152612a2981612893565b9050919050565b60006020820190508181036000830152612a49816128b6565b9050919050565b6000602082019050612a6560008301846128d9565b92915050565b6000612a75612a86565b9050612a818282612d01565b919050565b6000604051905090565b600067ffffffffffffffff821115612aab57612aaa612d90565b5b612ab482612dd3565b9050602081019050919050565b600067ffffffffffffffff821115612adc57612adb612d90565b5b612ae582612dd3565b9050602081019050919050565b600081519050919050565b600081519050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600081905092915050565b6000612b4082612c83565b9150612b4b83612c83565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612b8057612b7f612d32565b5b828201905092915050565b6000612b9682612c83565b9150612ba183612c83565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612bda57612bd9612d32565b5b828202905092915050565b6000612bf082612c83565b9150612bfb83612c83565b925082821015612c0e57612c0d612d32565b5b828203905092915050565b6000612c2482612c63565b9050919050565b60008115159050919050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b82818337600083830152505050565b60005b83811015612cba578082015181840152602081019050612c9f565b83811115612cc9576000848401525b50505050565b60006002820490506001821680612ce757607f821691505b60208210811415612cfb57612cfa612d61565b5b50919050565b612d0a82612dd3565b810181811067ffffffffffffffff82111715612d2957612d28612d90565b5b80604052505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f43616e6e6f74204d696e742054686174204d616e790000000000000000000000600082015250565b7f4d6178207065722057616c6c6574205265616368656400000000000000000000600082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f4e6f7420656e6f75676820737570706c792e0000000000000000000000000000600082015250565b612ee081612c19565b8114612eeb57600080fd5b50565b612ef781612c2b565b8114612f0257600080fd5b50565b612f0e81612c37565b8114612f1957600080fd5b50565b612f2581612c83565b8114612f3057600080fd5b5056fea26469706673582212206d6f8193751bfd42f0c2b8590e3497a914788280d11be79627d3cdf4f6623ca164736f6c63430008070033