0x60806040526000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506050600555600a6006556040518060400160405280600881526020017f7072652d73616c65000000000000000000000000000000000000000000000000815250600790805190602001906200009d92919062000253565b506001600860006101000a81548160ff02191690831515021790555060066009556000600a60006101000a81548160ff0219169083151502179055506101f4600b55348015620000ec57600080fd5b506040516200315638038062003156833981810160405262000112919081019062000319565b6000620001246200024b60201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35033600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505062000393565b600033905090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200029657805160ff1916838001178555620002c7565b82800160010185558215620002c7579182015b82811115620002c6578251825591602001919060010190620002a9565b5b509050620002d69190620002da565b5090565b620002ff91905b80821115620002fb576000816000905550600101620002e1565b5090565b90565b600081519050620003138162000379565b92915050565b6000602082840312156200032c57600080fd5b60006200033c8482850162000302565b91505092915050565b6000620003528262000359565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b620003848162000345565b81146200039057600080fd5b50565b612db380620003a36000396000f3fe6080604052600436106101e75760003560e01c8063863f1f9e11610102578063c606a34411610095578063ec9a261411610064578063ec9a261414610726578063f2fde38b14610751578063f5ea502a1461077a578063f83d08ba146107a557610227565b8063c606a3441461067a578063d19cc359146106a3578063d50f6bf0146106e1578063e9608b10146106fd57610227565b80638ea5b802116100d15780638ea5b802146105bc578063a1822504146105e7578063ac043c8614610626578063b071ffe51461064f57610227565b8063863f1f9e14610500578063867ae1011461053f5780638872cd3d146105685780638da5cb5b1461059157610227565b8063555407ee1161017a578063704b6c0211610149578063704b6c0214610458578063715018a614610481578063815246091461049857806381830593146104d557610227565b8063555407ee146103b257806355a1971d146103db57806361d737ce146104045780636bca820e1461042f57610227565b80634761f9d8116101b65780634761f9d8146103085780634cbb6614146103335780634f9369061461035e57806350baa6221461038957610227565b8063040d3cb0146102625780631072cbea1461028b578063144fa6d7146102b45780633cadcb67146102dd57610227565b36610227577ffa51d7267f8c6f76e22da7de2c156d6ad1c0a380f391372d7c44b9fa603c049d333460405161021d92919061275d565b60405180910390a1005b7f673a04d0febeeee1ebf3244e79617f4d14c50626c8ed4026ada6adc9047614e4333460405161025892919061275d565b60405180910390a1005b34801561026e57600080fd5b50610289600480360361028491908101906120ab565b6107d0565b005b34801561029757600080fd5b506102b260048036036102ad9190810190611fdc565b610834565b005b3480156102c057600080fd5b506102db60048036036102d69190810190611f8a565b6108df565b005b3480156102e957600080fd5b506102f26109b9565b6040516102ff9190612a82565b60405180910390f35b34801561031457600080fd5b5061031d6109bf565b60405161032a919061280f565b60405180910390f35b34801561033f57600080fd5b506103486109e5565b6040516103559190612a82565b60405180910390f35b34801561036a57600080fd5b506103736109eb565b6040516103809190612a82565b60405180910390f35b34801561039557600080fd5b506103b060048036036103ab91908101906120ab565b6109f1565b005b3480156103be57600080fd5b506103d960048036036103d4919081019061206a565b610b5f565b005b3480156103e757600080fd5b5061040260048036036103fd91908101906120ab565b610bd3565b005b34801561041057600080fd5b50610419610c7b565b60405161042691906127f4565b60405180910390f35b34801561043b57600080fd5b5061045660048036036104519190810190612018565b610c8e565b005b34801561046457600080fd5b5061047f600480360361047a9190810190611f8a565b610d05565b005b34801561048d57600080fd5b50610496610e4f565b005b3480156104a457600080fd5b506104bf60048036036104ba9190810190611f8a565b610fa4565b6040516104cc9190612a82565b60405180910390f35b3480156104e157600080fd5b506104ea610fed565b6040516104f79190612742565b60405180910390f35b34801561050c57600080fd5b50610527600480360361052291908101906120ab565b611013565b60405161053693929190612ac6565b60405180910390f35b34801561054b57600080fd5b50610566600480360361056191908101906120ab565b61105d565b005b34801561057457600080fd5b5061058f600480360361058a91908101906120ab565b6110c1565b005b34801561059d57600080fd5b506105a6611125565b6040516105b39190612742565b60405180910390f35b3480156105c857600080fd5b506105d161114e565b6040516105de9190612a82565b60405180910390f35b3480156105f357600080fd5b5061060e60048036036106099190810190612110565b611156565b60405161061d939291906127af565b60405180910390f35b34801561063257600080fd5b5061064d600480360361064891908101906120d4565b6112f0565b005b34801561065b57600080fd5b50610664611505565b604051610671919061282a565b60405180910390f35b34801561068657600080fd5b506106a1600480360361069c9190810190612018565b6115a3565b005b3480156106af57600080fd5b506106ca60048036036106c59190810190611fdc565b61161a565b6040516106d8929190612a9d565b60405180910390f35b6106fb60048036036106f69190810190611fb3565b6116ee565b005b34801561070957600080fd5b50610724600480360361071f91908101906120ab565b611792565b005b34801561073257600080fd5b5061073b611942565b6040516107489190612a82565b60405180910390f35b34801561075d57600080fd5b5061077860048036036107739190810190611f8a565b61194f565b005b34801561078657600080fd5b5061078f611b13565b60405161079c9190612a82565b60405180910390f35b3480156107b157600080fd5b506107ba611b19565b6040516107c791906127f4565b60405180910390f35b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461082a57600080fd5b80600b8190555050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461088e57600080fd5b6108db8282600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611b2c9092919063ffffffff16565b5050565b6108e7611bb2565b73ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610975576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161096c90612a02565b60405180910390fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60055481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60065481565b60095481565b600860009054906101000a900460ff1615610a41576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a38906129e2565b60405180910390fd5b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015610ac8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610abf906129c2565b60405180910390fd5b610b153383600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611b2c9092919063ffffffff16565b818103600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610bb957600080fd5b8060079080519060200190610bcf929190611e28565b5050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610c2d57600080fd5b6001811015610c71576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c6890612982565b60405180910390fd5b8060058190555050565b600a60009054906101000a900460ff1681565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610ce857600080fd5b80600860006101000a81548160ff02191690831515021790555050565b610d0d611bb2565b73ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d9b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d9290612a02565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610e0b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e0290612a22565b60405180910390fd5b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b610e57611bb2565b73ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ee5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610edc90612a02565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600080600080670de0b6b3a7640000600954600a0a6005548702028161103557fe5b0490506000606460065483028161104857fe5b04905085828294509450945050509193909250565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146110b757600080fd5b8060068190555050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461111b57600080fd5b8060098190555050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600047905090565b606080600080849050856004805490500381111561117957856004805490500390505b6060816040519080825280602002602001820160405280156111aa5781602001602082028038833980820191505090505b5090506060826040519080825280602002602001820160405280156111de5781602001602082028038833980820191505090505b50905060008090505b838110156112da5760006004828b018154811061120057fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508084838151811061123a57fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600360008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548383815181106112c057fe5b6020026020010181815250505080806001019150506111e7565b508181848a019550955095505050509250925092565b8073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141561135f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161135690612942565b60405180910390fd5b61136882611792565b600080600061137685611013565b8094508195508293505050508373ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156113bd5750600082115b156114bc5781600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506000600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414156114bb576004849080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5b7f21aa76b2b65ac1e64fc42c84c3f49e92d60a662620cb1fc0ad979d0b18fd53ff600733878688876040516114f6969594939291906128ba565b60405180910390a15050505050565b60078054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561159b5780601f106115705761010080835404028352916020019161159b565b820191906000526020600020905b81548152906001019060200180831161157e57829003601f168201915b505050505081565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146115fd57600080fd5b80600a60006101000a81548160ff02191690831515021790555050565b600080600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461167757600080fd5b600080600061168586611013565b80945081955082935050505082600360008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508282945094505050509250929050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461174857600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f1935050505015801561178e573d6000803e3d6000fd5b5050565b600a60009054906101000a900460ff166117e1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117d8906129a2565b60405180910390fd5b60008060006117ef84611013565b80945081955082935050505060008311156118fe576000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414156118b0576004339080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b82600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055505b7f0fdea81b08278186ad42912573e627a2e8b1ee632768c374a14192ca63069c906007338686604051611934949392919061286e565b60405180910390a150505050565b6000600480549050905090565b611957611bb2565b73ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146119e5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119dc90612a02565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611a55576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a4c90612922565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600b5481565b600860009054906101000a900460ff1681565b611bad8363a9059cbb60e01b8484604051602401611b4b929190612786565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050611bba565b505050565b600033905090565b6060611c1c826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c65648152508573ffffffffffffffffffffffffffffffffffffffff16611c819092919063ffffffff16565b9050600081511115611c7c5780806020019051611c3c9190810190612041565b611c7b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c7290612a62565b60405180910390fd5b5b505050565b6060611c908484600085611c99565b90509392505050565b606082471015611cde576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cd590612962565b60405180910390fd5b611ce785611dae565b611d26576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d1d90612a42565b60405180910390fd5b600060608673ffffffffffffffffffffffffffffffffffffffff168587604051611d50919061272b565b60006040518083038185875af1925050503d8060008114611d8d576040519150601f19603f3d011682016040523d82523d6000602084013e611d92565b606091505b5091509150611da2828286611dc1565b92505050949350505050565b600080823b905060008111915050919050565b60608315611dd157829050611e21565b600083511115611de45782518084602001fd5b816040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e18919061284c565b60405180910390fd5b9392505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611e6957805160ff1916838001178555611e97565b82800160010185558215611e97579182015b82811115611e96578251825591602001919060010190611e7b565b5b509050611ea49190611ea8565b5090565b611eca91905b80821115611ec6576000816000905550600101611eae565b5090565b90565b600081359050611edc81612d21565b92915050565b600081359050611ef181612d38565b92915050565b600081359050611f0681612d4f565b92915050565b600081519050611f1b81612d4f565b92915050565b600082601f830112611f3257600080fd5b8135611f45611f4082612b2a565b612afd565b91508082526020830160208301858383011115611f6157600080fd5b611f6c838284612cce565b50505092915050565b600081359050611f8481612d66565b92915050565b600060208284031215611f9c57600080fd5b6000611faa84828501611ecd565b91505092915050565b600060208284031215611fc557600080fd5b6000611fd384828501611ee2565b91505092915050565b60008060408385031215611fef57600080fd5b6000611ffd85828601611ecd565b925050602061200e85828601611f75565b9150509250929050565b60006020828403121561202a57600080fd5b600061203884828501611ef7565b91505092915050565b60006020828403121561205357600080fd5b600061206184828501611f0c565b91505092915050565b60006020828403121561207c57600080fd5b600082013567ffffffffffffffff81111561209657600080fd5b6120a284828501611f21565b91505092915050565b6000602082840312156120bd57600080fd5b60006120cb84828501611f75565b91505092915050565b600080604083850312156120e757600080fd5b60006120f585828601611f75565b925050602061210685828601611ecd565b9150509250929050565b6000806040838503121561212357600080fd5b600061213185828601611f75565b925050602061214285828601611f75565b9150509250929050565b6000612158838361218b565b60208301905092915050565b6000612170838361270d565b60208301905092915050565b61218581612c74565b82525050565b61219481612c1a565b82525050565b6121a381612c1a565b82525050565b60006121b482612b8b565b6121be8185612bdc565b93506121c983612b56565b8060005b838110156121fa5781516121e1888261214c565b97506121ec83612bc2565b9250506001810190506121cd565b5085935050505092915050565b600061221282612b96565b61221c8185612bed565b935061222783612b66565b8060005b8381101561225857815161223f8882612164565b975061224a83612bcf565b92505060018101905061222b565b5085935050505092915050565b61226e81612c3e565b82525050565b600061227f82612ba1565b6122898185612bfe565b9350612299818560208601612cdd565b80840191505092915050565b6122ae81612c86565b82525050565b60006122bf82612bb7565b6122c98185612c09565b93506122d9818560208601612cdd565b6122e281612d10565b840191505092915050565b60006122f882612bac565b6123028185612c09565b9350612312818560208601612cdd565b61231b81612d10565b840191505092915050565b6000815460018116600081146123435760018114612369576123ad565b607f60028304166123548187612c09565b955060ff1983168652602086019350506123ad565b600282046123778187612c09565b955061238285612b76565b60005b828110156123a457815481890152600182019150602081019050612385565b80880195505050505b505092915050565b60006123c2602683612c09565b91507f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008301527f64647265737300000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000612428601c83612c09565b91507f63616e74206e6f7420696e766974656420627920796f757273656c66000000006000830152602082019050919050565b6000612468602683612c09565b91507f416464726573733a20696e73756666696369656e742062616c616e636520666f60008301527f722063616c6c00000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006124ce601683612c09565b91507f696e7661696c642065786368616e67655f726174696f000000000000000000006000830152602082019050919050565b600061250e601883612c09565b91507f546865205072652d73616c652069732070656e64696e672e00000000000000006000830152602082019050919050565b600061254e601383612c09565b91507f6e6f7420656e6f75676820763320746f6b656e000000000000000000000000006000830152602082019050919050565b600061258e602c83612c09565b91507f546865207072652d73616c65206973206e6f74206f7665722c20796f7520636160008301527f6e277420776974686472617700000000000000000000000000000000000000006020830152604082019050919050565b60006125f4602083612c09565b91507f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726000830152602082019050919050565b6000612634601583612c09565b91507f696e7661696c642061646d696e206164647265737300000000000000000000006000830152602082019050919050565b6000612674601d83612c09565b91507f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006000830152602082019050919050565b60006126b4602a83612c09565b91507f5361666545524332303a204552433230206f7065726174696f6e20646964206e60008301527f6f742073756363656564000000000000000000000000000000000000000000006020830152604082019050919050565b61271681612c6a565b82525050565b61272581612c6a565b82525050565b60006127378284612274565b915081905092915050565b6000602082019050612757600083018461219a565b92915050565b6000604082019050612772600083018561217c565b61277f602083018461271c565b9392505050565b600060408201905061279b600083018561219a565b6127a8602083018461271c565b9392505050565b600060608201905081810360008301526127c981866121a9565b905081810360208301526127dd8185612207565b90506127ec604083018461271c565b949350505050565b60006020820190506128096000830184612265565b92915050565b600060208201905061282460008301846122a5565b92915050565b6000602082019050818103600083015261284481846122ed565b905092915050565b6000602082019050818103600083015261286681846122b4565b905092915050565b600060808201905081810360008301526128888187612326565b9050612897602083018661217c565b6128a4604083018561271c565b6128b1606083018461271c565b95945050505050565b600060c08201905081810360008301526128d48189612326565b90506128e3602083018861217c565b6128f0604083018761271c565b6128fd606083018661271c565b61290a608083018561219a565b61291760a083018461271c565b979650505050505050565b6000602082019050818103600083015261293b816123b5565b9050919050565b6000602082019050818103600083015261295b8161241b565b9050919050565b6000602082019050818103600083015261297b8161245b565b9050919050565b6000602082019050818103600083015261299b816124c1565b9050919050565b600060208201905081810360008301526129bb81612501565b9050919050565b600060208201905081810360008301526129db81612541565b9050919050565b600060208201905081810360008301526129fb81612581565b9050919050565b60006020820190508181036000830152612a1b816125e7565b9050919050565b60006020820190508181036000830152612a3b81612627565b9050919050565b60006020820190508181036000830152612a5b81612667565b9050919050565b60006020820190508181036000830152612a7b816126a7565b9050919050565b6000602082019050612a97600083018461271c565b92915050565b6000604082019050612ab2600083018561271c565b612abf602083018461271c565b9392505050565b6000606082019050612adb600083018661271c565b612ae8602083018561271c565b612af5604083018461271c565b949350505050565b6000604051905081810181811067ffffffffffffffff82111715612b2057600080fd5b8060405250919050565b600067ffffffffffffffff821115612b4157600080fd5b601f19601f8301169050602081019050919050565b6000819050602082019050919050565b6000819050602082019050919050565b60008190508160005260206000209050919050565b600081519050919050565b600081519050919050565b600081519050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600081905092915050565b600082825260208201905092915050565b6000612c2582612c4a565b9050919050565b6000612c3782612c4a565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b6000612c7f82612caa565b9050919050565b6000612c9182612c98565b9050919050565b6000612ca382612c4a565b9050919050565b6000612cb582612cbc565b9050919050565b6000612cc782612c4a565b9050919050565b82818337600083830152505050565b60005b83811015612cfb578082015181840152602081019050612ce0565b83811115612d0a576000848401525b50505050565b6000601f19601f8301169050919050565b612d2a81612c1a565b8114612d3557600080fd5b50565b612d4181612c2c565b8114612d4c57600080fd5b50565b612d5881612c3e565b8114612d6357600080fd5b50565b612d6f81612c6a565b8114612d7a57600080fd5b5056fea26469706673582212206378c861f67623bf59a23764a845a771668165da78732d10a8f4a9112547f16864736f6c63430006020033000000000000000000000000735c11a6d0f3eea36b2fe543b0525657437afbca