608060405234801561000f575f80fd5b506040516132473803806132478339818101604052810190610031919061020b565b8060405180602001604052805f815250610050816100d760201b60201c565b505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036100c1575f6040517f1e4fbdf70000000000000000000000000000000000000000000000000000000081526004016100b89190610245565b60405180910390fd5b6100d0816100ea60201b60201c565b5050610567565b80600290816100e69190610498565b5050565b5f60035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160035f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6101da826101b1565b9050919050565b6101ea816101d0565b81146101f4575f80fd5b50565b5f81519050610205816101e1565b92915050565b5f602082840312156102205761021f6101ad565b5b5f61022d848285016101f7565b91505092915050565b61023f816101d0565b82525050565b5f6020820190506102585f830184610236565b92915050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806102d957607f821691505b6020821081036102ec576102eb610295565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f6008830261034e7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610313565b6103588683610313565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f61039c61039761039284610370565b610379565b610370565b9050919050565b5f819050919050565b6103b583610382565b6103c96103c1826103a3565b84845461031f565b825550505050565b5f90565b6103dd6103d1565b6103e88184846103ac565b505050565b5b8181101561040b576104005f826103d5565b6001810190506103ee565b5050565b601f82111561045057610421816102f2565b61042a84610304565b81016020851015610439578190505b61044d61044585610304565b8301826103ed565b50505b505050565b5f82821c905092915050565b5f6104705f1984600802610455565b1980831691505092915050565b5f6104888383610461565b9150826002028217905092915050565b6104a18261025e565b67ffffffffffffffff8111156104ba576104b9610268565b5b6104c482546102c2565b6104cf82828561040f565b5f60209050601f831160018114610500575f84156104ee578287015190505b6104f8858261047d565b86555061055f565b601f19841661050e866102f2565b5f5b8281101561053557848901518255600182019150602085019450602081019050610510565b86831015610552578489015161054e601f891682610461565b8355505b6001600288020188555050505b505050505050565b612cd3806105745f395ff3fe608060405234801561000f575f80fd5b50600436106100fd575f3560e01c8063715018a611610095578063e985e9c511610064578063e985e9c514610291578063f242432a146102c1578063f2fde38b146102dd578063f5298aca146102f9576100fd565b8063715018a614610231578063731133e91461023b5780638da5cb5b14610257578063a22cb46514610275576100fd565b80631f7fdffa116100d15780631f7fdffa146101ad5780632eb2c2d6146101c95780634e1273f4146101e55780636b20c45414610215576100fd565b8062fdd58e1461010157806301ffc9a71461013157806302fe5305146101615780630e89341c1461017d575b5f80fd5b61011b60048036038101906101169190611bad565b610315565b6040516101289190611bfa565b60405180910390f35b61014b60048036038101906101469190611c68565b61036a565b6040516101589190611cad565b60405180910390f35b61017b60048036038101906101769190611e02565b61044b565b005b61019760048036038101906101929190611e49565b61045f565b6040516101a49190611ed4565b60405180910390f35b6101c760048036038101906101c29190612056565b6104f1565b005b6101e360048036038101906101de919061210e565b61050b565b005b6101ff60048036038101906101fa9190612299565b6105c3565b60405161020c91906123c6565b60405180910390f35b61022f600480360381019061022a91906123e6565b6106ca565b005b610239610776565b005b6102556004803603810190610250919061246e565b610789565b005b61025f6107a3565b60405161026c91906124fd565b60405180910390f35b61028f600480360381019061028a9190612540565b6107cb565b005b6102ab60048036038101906102a6919061257e565b6107e1565b6040516102b89190611cad565b60405180910390f35b6102db60048036038101906102d691906125bc565b61086f565b005b6102f760048036038101906102f2919061264f565b610927565b005b610313600480360381019061030e919061267a565b6109ab565b005b5f805f8381526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f7fd9b67a26000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061043457507f0e89341c000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80610444575061044382610a57565b5b9050919050565b610453610ac0565b61045c81610b47565b50565b60606002805461046e906126f7565b80601f016020809104026020016040519081016040528092919081815260200182805461049a906126f7565b80156104e55780601f106104bc576101008083540402835291602001916104e5565b820191905f5260205f20905b8154815290600101906020018083116104c857829003601f168201915b50505050509050919050565b6104f9610ac0565b61050584848484610b5a565b50505050565b5f73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16148061057057505f73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b6105af576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105a690612771565b60405180910390fd5b6105bc8585858585610bdd565b5050505050565b6060815183511461060f57815183516040517f5b05999100000000000000000000000000000000000000000000000000000000815260040161060692919061278f565b60405180910390fd5b5f835167ffffffffffffffff81111561062b5761062a611cde565b5b6040519080825280602002602001820160405280156106595781602001602082028036833780820191505090505b5090505f5b84518110156106bf5761069561067d8287610c8490919063ffffffff16565b6106908387610c9790919063ffffffff16565b610315565b8282815181106106a8576106a76127b6565b5b60200260200101818152505080600101905061065e565b508091505092915050565b6106d2610caa565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561071b575061071983610714610caa565b6107e1565b155b1561076657610728610caa565b836040517fe237d92200000000000000000000000000000000000000000000000000000000815260040161075d9291906127e3565b60405180910390fd5b610771838383610cb1565b505050565b61077e610ac0565b6107875f610d41565b565b610791610ac0565b61079d84848484610e04565b50505050565b5f60035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6107dd6107d6610caa565b8383610e99565b5050565b5f60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16905092915050565b5f73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614806108d457505f73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b610913576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161090a90612771565b60405180910390fd5b6109208585858585611002565b5050505050565b61092f610ac0565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361099f575f6040517f1e4fbdf700000000000000000000000000000000000000000000000000000000815260040161099691906124fd565b60405180910390fd5b6109a881610d41565b50565b6109b3610caa565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156109fc57506109fa836109f5610caa565b6107e1565b155b15610a4757610a09610caa565b836040517fe237d922000000000000000000000000000000000000000000000000000000008152600401610a3e9291906127e3565b60405180910390fd5b610a528383836110a9565b505050565b5f7f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b610ac8610caa565b73ffffffffffffffffffffffffffffffffffffffff16610ae66107a3565b73ffffffffffffffffffffffffffffffffffffffff1614610b4557610b09610caa565b6040517f118cdaa7000000000000000000000000000000000000000000000000000000008152600401610b3c91906124fd565b60405180910390fd5b565b8060029081610b5691906129a7565b5050565b5f73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603610bca575f6040517f57f447ce000000000000000000000000000000000000000000000000000000008152600401610bc191906124fd565b60405180910390fd5b610bd75f8585858561114b565b50505050565b5f610be6610caa565b90508073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614158015610c2b5750610c2986826107e1565b155b15610c6f5780866040517fe237d922000000000000000000000000000000000000000000000000000000008152600401610c669291906127e3565b60405180910390fd5b610c7c86868686866111f7565b505050505050565b5f60208202602084010151905092915050565b5f60208202602084010151905092915050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610d21575f6040517f01a83514000000000000000000000000000000000000000000000000000000008152600401610d1891906124fd565b60405180910390fd5b610d3c835f848460405180602001604052805f81525061114b565b505050565b5f60035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160035f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603610e74575f6040517f57f447ce000000000000000000000000000000000000000000000000000000008152600401610e6b91906124fd565b60405180910390fd5b5f80610e8085856112eb565b91509150610e915f8784848761114b565b505050505050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610f09575f6040517fced3e100000000000000000000000000000000000000000000000000000000008152600401610f0091906124fd565b60405180910390fd5b8060015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051610ff59190611cad565b60405180910390a3505050565b5f61100b610caa565b90508073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614158015611050575061104e86826107e1565b155b156110945780866040517fe237d92200000000000000000000000000000000000000000000000000000000815260040161108b9291906127e3565b60405180910390fd5b6110a1868686868661131b565b505050505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611119575f6040517f01a8351400000000000000000000000000000000000000000000000000000000815260040161111091906124fd565b60405180910390fd5b5f8061112584846112eb565b91509150611144855f848460405180602001604052805f81525061114b565b5050505050565b61115785858585611421565b5f73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16146111f0575f611193610caa565b905060018451036111df575f6111b25f86610c9790919063ffffffff16565b90505f6111c85f86610c9790919063ffffffff16565b90506111d88389898585896117b1565b50506111ee565b6111ed818787878787611960565b5b505b5050505050565b5f73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603611267575f6040517f57f447ce00000000000000000000000000000000000000000000000000000000815260040161125e91906124fd565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16036112d7575f6040517f01a835140000000000000000000000000000000000000000000000000000000081526004016112ce91906124fd565b60405180910390fd5b6112e4858585858561114b565b5050505050565b60608060405191506001825283602083015260408201905060018152826020820152604081016040529250929050565b5f73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff160361138b575f6040517f57f447ce00000000000000000000000000000000000000000000000000000000815260040161138291906124fd565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16036113fb575f6040517f01a835140000000000000000000000000000000000000000000000000000000081526004016113f291906124fd565b60405180910390fd5b5f8061140785856112eb565b91509150611418878784848761114b565b50505050505050565b805182511461146b57815181516040517f5b05999100000000000000000000000000000000000000000000000000000000815260040161146292919061278f565b60405180910390fd5b5f611474610caa565b90505f5b8351811015611670575f6114958286610c9790919063ffffffff16565b90505f6114ab8386610c9790919063ffffffff16565b90505f73ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff16146115ce575f805f8481526020019081526020015f205f8a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490508181101561157a57888183856040517f03dee4c50000000000000000000000000000000000000000000000000000000081526004016115719493929190612a76565b60405180910390fd5b8181035f808581526020019081526020015f205f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550505b5f73ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff161461166357805f808481526020019081526020015f205f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825461165b9190612ae6565b925050819055505b5050806001019050611478565b50600183510361172b575f61168e5f85610c9790919063ffffffff16565b90505f6116a45f85610c9790919063ffffffff16565b90508573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62858560405161171c92919061278f565b60405180910390a450506117aa565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516117a1929190612b19565b60405180910390a45b5050505050565b5f8473ffffffffffffffffffffffffffffffffffffffff163b1115611958578373ffffffffffffffffffffffffffffffffffffffff1663f23a6e6187878686866040518663ffffffff1660e01b8152600401611811959493929190612ba0565b6020604051808303815f875af192505050801561184c57506040513d601f19601f820116820180604052508101906118499190612c0c565b60015b6118cd573d805f811461187a576040519150601f19603f3d011682016040523d82523d5f602084013e61187f565b606091505b505f8151036118c557846040517f57f447ce0000000000000000000000000000000000000000000000000000000081526004016118bc91906124fd565b60405180910390fd5b805181602001fd5b63f23a6e6160e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161461195657846040517f57f447ce00000000000000000000000000000000000000000000000000000000815260040161194d91906124fd565b60405180910390fd5b505b505050505050565b5f8473ffffffffffffffffffffffffffffffffffffffff163b1115611b07578373ffffffffffffffffffffffffffffffffffffffff1663bc197c8187878686866040518663ffffffff1660e01b81526004016119c0959493929190612c37565b6020604051808303815f875af19250505080156119fb57506040513d601f19601f820116820180604052508101906119f89190612c0c565b60015b611a7c573d805f8114611a29576040519150601f19603f3d011682016040523d82523d5f602084013e611a2e565b606091505b505f815103611a7457846040517f57f447ce000000000000000000000000000000000000000000000000000000008152600401611a6b91906124fd565b60405180910390fd5b805181602001fd5b63bc197c8160e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614611b0557846040517f57f447ce000000000000000000000000000000000000000000000000000000008152600401611afc91906124fd565b60405180910390fd5b505b505050505050565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f611b4982611b20565b9050919050565b611b5981611b3f565b8114611b63575f80fd5b50565b5f81359050611b7481611b50565b92915050565b5f819050919050565b611b8c81611b7a565b8114611b96575f80fd5b50565b5f81359050611ba781611b83565b92915050565b5f8060408385031215611bc357611bc2611b18565b5b5f611bd085828601611b66565b9250506020611be185828601611b99565b9150509250929050565b611bf481611b7a565b82525050565b5f602082019050611c0d5f830184611beb565b92915050565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b611c4781611c13565b8114611c51575f80fd5b50565b5f81359050611c6281611c3e565b92915050565b5f60208284031215611c7d57611c7c611b18565b5b5f611c8a84828501611c54565b91505092915050565b5f8115159050919050565b611ca781611c93565b82525050565b5f602082019050611cc05f830184611c9e565b92915050565b5f80fd5b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b611d1482611cce565b810181811067ffffffffffffffff82111715611d3357611d32611cde565b5b80604052505050565b5f611d45611b0f565b9050611d518282611d0b565b919050565b5f67ffffffffffffffff821115611d7057611d6f611cde565b5b611d7982611cce565b9050602081019050919050565b828183375f83830152505050565b5f611da6611da184611d56565b611d3c565b905082815260208101848484011115611dc257611dc1611cca565b5b611dcd848285611d86565b509392505050565b5f82601f830112611de957611de8611cc6565b5b8135611df9848260208601611d94565b91505092915050565b5f60208284031215611e1757611e16611b18565b5b5f82013567ffffffffffffffff811115611e3457611e33611b1c565b5b611e4084828501611dd5565b91505092915050565b5f60208284031215611e5e57611e5d611b18565b5b5f611e6b84828501611b99565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f611ea682611e74565b611eb08185611e7e565b9350611ec0818560208601611e8e565b611ec981611cce565b840191505092915050565b5f6020820190508181035f830152611eec8184611e9c565b905092915050565b5f67ffffffffffffffff821115611f0e57611f0d611cde565b5b602082029050602081019050919050565b5f80fd5b5f611f35611f3084611ef4565b611d3c565b90508083825260208201905060208402830185811115611f5857611f57611f1f565b5b835b81811015611f815780611f6d8882611b99565b845260208401935050602081019050611f5a565b5050509392505050565b5f82601f830112611f9f57611f9e611cc6565b5b8135611faf848260208601611f23565b91505092915050565b5f67ffffffffffffffff821115611fd257611fd1611cde565b5b611fdb82611cce565b9050602081019050919050565b5f611ffa611ff584611fb8565b611d3c565b90508281526020810184848401111561201657612015611cca565b5b612021848285611d86565b509392505050565b5f82601f83011261203d5761203c611cc6565b5b813561204d848260208601611fe8565b91505092915050565b5f805f806080858703121561206e5761206d611b18565b5b5f61207b87828801611b66565b945050602085013567ffffffffffffffff81111561209c5761209b611b1c565b5b6120a887828801611f8b565b935050604085013567ffffffffffffffff8111156120c9576120c8611b1c565b5b6120d587828801611f8b565b925050606085013567ffffffffffffffff8111156120f6576120f5611b1c565b5b61210287828801612029565b91505092959194509250565b5f805f805f60a0868803121561212757612126611b18565b5b5f61213488828901611b66565b955050602061214588828901611b66565b945050604086013567ffffffffffffffff81111561216657612165611b1c565b5b61217288828901611f8b565b935050606086013567ffffffffffffffff81111561219357612192611b1c565b5b61219f88828901611f8b565b925050608086013567ffffffffffffffff8111156121c0576121bf611b1c565b5b6121cc88828901612029565b9150509295509295909350565b5f67ffffffffffffffff8211156121f3576121f2611cde565b5b602082029050602081019050919050565b5f612216612211846121d9565b611d3c565b9050808382526020820190506020840283018581111561223957612238611f1f565b5b835b81811015612262578061224e8882611b66565b84526020840193505060208101905061223b565b5050509392505050565b5f82601f8301126122805761227f611cc6565b5b8135612290848260208601612204565b91505092915050565b5f80604083850312156122af576122ae611b18565b5b5f83013567ffffffffffffffff8111156122cc576122cb611b1c565b5b6122d88582860161226c565b925050602083013567ffffffffffffffff8111156122f9576122f8611b1c565b5b61230585828601611f8b565b9150509250929050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61234181611b7a565b82525050565b5f6123528383612338565b60208301905092915050565b5f602082019050919050565b5f6123748261230f565b61237e8185612319565b935061238983612329565b805f5b838110156123b95781516123a08882612347565b97506123ab8361235e565b92505060018101905061238c565b5085935050505092915050565b5f6020820190508181035f8301526123de818461236a565b905092915050565b5f805f606084860312156123fd576123fc611b18565b5b5f61240a86828701611b66565b935050602084013567ffffffffffffffff81111561242b5761242a611b1c565b5b61243786828701611f8b565b925050604084013567ffffffffffffffff81111561245857612457611b1c565b5b61246486828701611f8b565b9150509250925092565b5f805f806080858703121561248657612485611b18565b5b5f61249387828801611b66565b94505060206124a487828801611b99565b93505060406124b587828801611b99565b925050606085013567ffffffffffffffff8111156124d6576124d5611b1c565b5b6124e287828801612029565b91505092959194509250565b6124f781611b3f565b82525050565b5f6020820190506125105f8301846124ee565b92915050565b61251f81611c93565b8114612529575f80fd5b50565b5f8135905061253a81612516565b92915050565b5f806040838503121561255657612555611b18565b5b5f61256385828601611b66565b92505060206125748582860161252c565b9150509250929050565b5f806040838503121561259457612593611b18565b5b5f6125a185828601611b66565b92505060206125b285828601611b66565b9150509250929050565b5f805f805f60a086880312156125d5576125d4611b18565b5b5f6125e288828901611b66565b95505060206125f388828901611b66565b945050604061260488828901611b99565b935050606061261588828901611b99565b925050608086013567ffffffffffffffff81111561263657612635611b1c565b5b61264288828901612029565b9150509295509295909350565b5f6020828403121561266457612663611b18565b5b5f61267184828501611b66565b91505092915050565b5f805f6060848603121561269157612690611b18565b5b5f61269e86828701611b66565b93505060206126af86828701611b99565b92505060406126c086828701611b99565b9150509250925092565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061270e57607f821691505b602082108103612721576127206126ca565b5b50919050565b7f546f6b656e206973206e6f6e2d7472616e736665727261626c650000000000005f82015250565b5f61275b601a83611e7e565b915061276682612727565b602082019050919050565b5f6020820190508181035f8301526127888161274f565b9050919050565b5f6040820190506127a25f830185611beb565b6127af6020830184611beb565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f6040820190506127f65f8301856124ee565b61280360208301846124ee565b9392505050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026128667fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8261282b565b612870868361282b565b95508019841693508086168417925050509392505050565b5f819050919050565b5f6128ab6128a66128a184611b7a565b612888565b611b7a565b9050919050565b5f819050919050565b6128c483612891565b6128d86128d0826128b2565b848454612837565b825550505050565b5f90565b6128ec6128e0565b6128f78184846128bb565b505050565b5b8181101561291a5761290f5f826128e4565b6001810190506128fd565b5050565b601f82111561295f576129308161280a565b6129398461281c565b81016020851015612948578190505b61295c6129548561281c565b8301826128fc565b50505b505050565b5f82821c905092915050565b5f61297f5f1984600802612964565b1980831691505092915050565b5f6129978383612970565b9150826002028217905092915050565b6129b082611e74565b67ffffffffffffffff8111156129c9576129c8611cde565b5b6129d382546126f7565b6129de82828561291e565b5f60209050601f831160018114612a0f575f84156129fd578287015190505b612a07858261298c565b865550612a6e565b601f198416612a1d8661280a565b5f5b82811015612a4457848901518255600182019150602085019450602081019050612a1f565b86831015612a615784890151612a5d601f891682612970565b8355505b6001600288020188555050505b505050505050565b5f608082019050612a895f8301876124ee565b612a966020830186611beb565b612aa36040830185611beb565b612ab06060830184611beb565b95945050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f612af082611b7a565b9150612afb83611b7a565b9250828201905080821115612b1357612b12612ab9565b5b92915050565b5f6040820190508181035f830152612b31818561236a565b90508181036020830152612b45818461236a565b90509392505050565b5f81519050919050565b5f82825260208201905092915050565b5f612b7282612b4e565b612b7c8185612b58565b9350612b8c818560208601611e8e565b612b9581611cce565b840191505092915050565b5f60a082019050612bb35f8301886124ee565b612bc060208301876124ee565b612bcd6040830186611beb565b612bda6060830185611beb565b8181036080830152612bec8184612b68565b90509695505050505050565b5f81519050612c0681611c3e565b92915050565b5f60208284031215612c2157612c20611b18565b5b5f612c2e84828501612bf8565b91505092915050565b5f60a082019050612c4a5f8301886124ee565b612c5760208301876124ee565b8181036040830152612c69818661236a565b90508181036060830152612c7d818561236a565b90508181036080830152612c918184612b68565b9050969550505050505056fea2646970667358221220d1b7743aba6ac349197dd4c136bc20b1b248f825d3782a5c8f95754c9afd650364736f6c634300081a003300000000000000000000000002183d53f78c05ec8c24a5f063ce78dfe0ac5979