608060405234801561000f575f80fd5b506040518060400160405280600981526020017f417274467573696f6e00000000000000000000000000000000000000000000008152506040518060400160405280600381526020017f4154460000000000000000000000000000000000000000000000000000000000815250815f908161008a91906102e3565b50806001908161009a91906102e3565b5050505f600a819055506103b2565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061012457607f821691505b602082108103610137576101366100e0565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026101997fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8261015e565b6101a3868361015e565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f6101e76101e26101dd846101bb565b6101c4565b6101bb565b9050919050565b5f819050919050565b610200836101cd565b61021461020c826101ee565b84845461016a565b825550505050565b5f90565b61022861021c565b6102338184846101f7565b505050565b5b818110156102565761024b5f82610220565b600181019050610239565b5050565b601f82111561029b5761026c8161013d565b6102758461014f565b81016020851015610284578190505b6102986102908561014f565b830182610238565b50505b505050565b5f82821c905092915050565b5f6102bb5f19846008026102a0565b1980831691505092915050565b5f6102d383836102ac565b9150826002028217905092915050565b6102ec826100a9565b67ffffffffffffffff811115610305576103046100b3565b5b61030f825461010d565b61031a82828561025a565b5f60209050601f83116001811461034b575f8415610339578287015190505b61034385826102c8565b8655506103aa565b601f1984166103598661013d565b5f5b828110156103805784890151825560018201915060208501945060208101905061035b565b8683101561039d5784890151610399601f8916826102ac565b8355505b6001600288020188555050505b505050505050565b612968806103bf5f395ff3fe608060405234801561000f575f80fd5b506004361061011f575f3560e01c806342842e0e116100ab578063a22cb4651161006f578063a22cb46514610329578063b88d4fde14610345578063c87b56dd14610361578063d6c54d3c14610391578063e985e9c5146103c15761011f565b806342842e0e1461025f5780634f6ccce71461027b5780636352211e146102ab57806370a08231146102db57806395d89b411461030b5761011f565b8063095ea7b3116100f2578063095ea7b3146101bd5780630caee443146101d957806318160ddd146101f557806323b872dd146102135780632f745c591461022f5761011f565b806301ffc9a71461012357806304f322791461015357806306fdde031461016f578063081812fc1461018d575b5f80fd5b61013d60048036038101906101389190611c84565b6103f1565b60405161014a9190611cc9565b60405180910390f35b61016d60048036038101906101689190611e78565b61046a565b005b6101776104b2565b6040516101849190611f32565b60405180910390f35b6101a760048036038101906101a29190611f85565b610541565b6040516101b49190611fbf565b60405180910390f35b6101d760048036038101906101d29190611fd8565b61055c565b005b6101f360048036038101906101ee91906120da565b610572565b005b6101fd61065c565b60405161020a9190612171565b60405180910390f35b61022d6004803603810190610228919061218a565b610668565b005b61024960048036038101906102449190611fd8565b610767565b6040516102569190612171565b60405180910390f35b6102796004803603810190610274919061218a565b61080b565b005b61029560048036038101906102909190611f85565b61082a565b6040516102a29190612171565b60405180910390f35b6102c560048036038101906102c09190611f85565b61089c565b6040516102d29190611fbf565b60405180910390f35b6102f560048036038101906102f091906121da565b6108ad565b6040516103029190612171565b60405180910390f35b610313610963565b6040516103209190611f32565b60405180910390f35b610343600480360381019061033e919061222f565b6109f3565b005b61035f600480360381019061035a919061230b565b610a09565b005b61037b60048036038101906103769190611f85565b610a26565b6040516103889190611f32565b60405180910390f35b6103ab60048036038101906103a691906121da565b610ac7565b6040516103b89190612171565b60405180910390f35b6103db60048036038101906103d6919061238b565b610adc565b6040516103e89190611cc9565b60405180910390f35b5f7f780e9d63000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610463575061046282610b6a565b5b9050919050565b81600b5f600a5481526020019081526020015f20908161048a91906125c3565b5061049781600a54610c4b565b600a5f8154809291906104a9906126bf565b91905055505050565b60605f80546104c0906123f6565b80601f01602080910402602001604051908101604052809291908181526020018280546104ec906123f6565b80156105375780601f1061050e57610100808354040283529160200191610537565b820191905f5260205f20905b81548152906001019060200180831161051a57829003601f168201915b5050505050905090565b5f61054b82610c68565b5061055582610cee565b9050919050565b61056e8282610569610d27565b610d2e565b5050565b60028351146105b6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105ad90612750565b60405180910390fd5b5f5b8351811015610612575f8482815181106105d5576105d461276e565b5b602002602001015190506105e881610d40565b600b5f8281526020019081526020015f205f6106049190611bc6565b5080806001019150506105b8565b5081600b5f600a5481526020019081526020015f20908161063391906125c3565b5061064081600a54610c4b565b600a5f815480929190610652906126bf565b9190505550505050565b5f600880549050905090565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036106d8575f6040517f64a0ae920000000000000000000000000000000000000000000000000000000081526004016106cf9190611fbf565b60405180910390fd5b5f6106eb83836106e6610d27565b610dc2565b90508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610761578382826040517f64283d7b0000000000000000000000000000000000000000000000000000000081526004016107589392919061279b565b60405180910390fd5b50505050565b5f610771836108ad565b82106107b65782826040517fa57d13dc0000000000000000000000000000000000000000000000000000000081526004016107ad9291906127d0565b60405180910390fd5b60065f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8381526020019081526020015f2054905092915050565b61082583838360405180602001604052805f815250610a09565b505050565b5f61083361065c565b8210610878575f826040517fa57d13dc00000000000000000000000000000000000000000000000000000000815260040161086f9291906127d0565b60405180910390fd5b6008828154811061088c5761088b61276e565b5b905f5260205f2001549050919050565b5f6108a682610c68565b9050919050565b5f8073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361091e575f6040517f89c62b640000000000000000000000000000000000000000000000000000000081526004016109159190611fbf565b60405180910390fd5b60035f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b606060018054610972906123f6565b80601f016020809104026020016040519081016040528092919081815260200182805461099e906123f6565b80156109e95780601f106109c0576101008083540402835291602001916109e9565b820191905f5260205f20905b8154815290600101906020018083116109cc57829003601f168201915b5050505050905090565b610a056109fe610d27565b8383610edc565b5050565b610a14848484610668565b610a2084848484611045565b50505050565b6060600b5f8381526020019081526020015f208054610a44906123f6565b80601f0160208091040260200160405190810160405280929190818152602001828054610a70906123f6565b8015610abb5780601f10610a9257610100808354040283529160200191610abb565b820191905f5260205f20905b815481529060010190602001808311610a9e57829003601f168201915b50505050509050919050565b600c602052805f5260405f205f915090505481565b5f60055f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16905092915050565b5f7f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610c3457507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80610c445750610c43826111f7565b5b9050919050565b610c64828260405180602001604052805f815250611260565b5050565b5f80610c738361127b565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610ce557826040517f7e273289000000000000000000000000000000000000000000000000000000008152600401610cdc9190612171565b60405180910390fd5b80915050919050565b5f60045f8381526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b5f33905090565b610d3b83838360016112b4565b505050565b5f610d4c5f835f610dc2565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610dbe57816040517f7e273289000000000000000000000000000000000000000000000000000000008152600401610db59190612171565b60405180910390fd5b5050565b5f80610dcf858585611473565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610e1257610e0d8461167e565b610e51565b8473ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610e5057610e4f81856116c2565b5b5b5f73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1603610e9257610e8d8461180c565b610ed1565b8473ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610ed057610ecf85856118cc565b5b5b809150509392505050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610f4c57816040517f5b08ba18000000000000000000000000000000000000000000000000000000008152600401610f439190611fbf565b60405180910390fd5b8060055f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31836040516110389190611cc9565b60405180910390a3505050565b5f8373ffffffffffffffffffffffffffffffffffffffff163b11156111f1578273ffffffffffffffffffffffffffffffffffffffff1663150b7a02611088610d27565b8685856040518563ffffffff1660e01b81526004016110aa9493929190612849565b6020604051808303815f875af19250505080156110e557506040513d601f19601f820116820180604052508101906110e291906128a7565b60015b611166573d805f8114611113576040519150601f19603f3d011682016040523d82523d5f602084013e611118565b606091505b505f81510361115e57836040517f64a0ae920000000000000000000000000000000000000000000000000000000081526004016111559190611fbf565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916146111ef57836040517f64a0ae920000000000000000000000000000000000000000000000000000000081526004016111e69190611fbf565b60405180910390fd5b505b50505050565b5f7f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b61126a8383611950565b6112765f848484611045565b505050565b5f60025f8381526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b80806112ec57505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b1561141e575f6112fb84610c68565b90505f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561136557508273ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614155b801561137857506113768184610adc565b155b156113ba57826040517fa9fbf51f0000000000000000000000000000000000000000000000000000000081526004016113b19190611fbf565b60405180910390fd5b811561141c57838573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45b505b8360045f8581526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050505050565b5f8061147e8461127b565b90505f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16146114bf576114be818486611a43565b5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461154a576114fe5f855f806112b4565b600160035f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825403925050819055505b5f73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16146115c957600160035f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055505b8460025f8681526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550838573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4809150509392505050565b60088054905060095f8381526020019081526020015f2081905550600881908060018154018082558091505060019003905f5260205f20015f909190919091505550565b5f6116cc836108ad565b90505f60075f8481526020019081526020015f205490508181146117a3575f60065f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8481526020019081526020015f205490508060065f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8481526020019081526020015f20819055508160075f8381526020019081526020015f2081905550505b60075f8481526020019081526020015f205f905560065f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8381526020019081526020015f205f905550505050565b5f600160088054905061181f91906128d2565b90505f60095f8481526020019081526020015f205490505f6008838154811061184b5761184a61276e565b5b905f5260205f2001549050806008838154811061186b5761186a61276e565b5b905f5260205f2001819055508160095f8381526020019081526020015f208190555060095f8581526020019081526020015f205f905560088054806118b3576118b2612905565b5b600190038181905f5260205f20015f9055905550505050565b5f60016118d8846108ad565b6118e291906128d2565b90508160065f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8381526020019081526020015f20819055508060075f8481526020019081526020015f2081905550505050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036119c0575f6040517f64a0ae920000000000000000000000000000000000000000000000000000000081526004016119b79190611fbf565b60405180910390fd5b5f6119cc83835f610dc2565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614611a3e575f6040517f73c6ac6e000000000000000000000000000000000000000000000000000000008152600401611a359190611fbf565b60405180910390fd5b505050565b611a4e838383611b06565b611b01575f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611ac257806040517f7e273289000000000000000000000000000000000000000000000000000000008152600401611ab99190612171565b60405180910390fd5b81816040517f177e802f000000000000000000000000000000000000000000000000000000008152600401611af89291906127d0565b60405180910390fd5b505050565b5f8073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015611bbd57508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480611b7e5750611b7d8484610adc565b5b80611bbc57508273ffffffffffffffffffffffffffffffffffffffff16611ba483610cee565b73ffffffffffffffffffffffffffffffffffffffff16145b5b90509392505050565b508054611bd2906123f6565b5f825580601f10611be35750611c00565b601f0160209004905f5260205f2090810190611bff9190611c03565b5b50565b5b80821115611c1a575f815f905550600101611c04565b5090565b5f604051905090565b5f80fd5b5f80fd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b611c6381611c2f565b8114611c6d575f80fd5b50565b5f81359050611c7e81611c5a565b92915050565b5f60208284031215611c9957611c98611c27565b5b5f611ca684828501611c70565b91505092915050565b5f8115159050919050565b611cc381611caf565b82525050565b5f602082019050611cdc5f830184611cba565b92915050565b5f80fd5b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b611d3082611cea565b810181811067ffffffffffffffff82111715611d4f57611d4e611cfa565b5b80604052505050565b5f611d61611c1e565b9050611d6d8282611d27565b919050565b5f67ffffffffffffffff821115611d8c57611d8b611cfa565b5b611d9582611cea565b9050602081019050919050565b828183375f83830152505050565b5f611dc2611dbd84611d72565b611d58565b905082815260208101848484011115611dde57611ddd611ce6565b5b611de9848285611da2565b509392505050565b5f82601f830112611e0557611e04611ce2565b5b8135611e15848260208601611db0565b91505092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f611e4782611e1e565b9050919050565b611e5781611e3d565b8114611e61575f80fd5b50565b5f81359050611e7281611e4e565b92915050565b5f8060408385031215611e8e57611e8d611c27565b5b5f83013567ffffffffffffffff811115611eab57611eaa611c2b565b5b611eb785828601611df1565b9250506020611ec885828601611e64565b9150509250929050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f611f0482611ed2565b611f0e8185611edc565b9350611f1e818560208601611eec565b611f2781611cea565b840191505092915050565b5f6020820190508181035f830152611f4a8184611efa565b905092915050565b5f819050919050565b611f6481611f52565b8114611f6e575f80fd5b50565b5f81359050611f7f81611f5b565b92915050565b5f60208284031215611f9a57611f99611c27565b5b5f611fa784828501611f71565b91505092915050565b611fb981611e3d565b82525050565b5f602082019050611fd25f830184611fb0565b92915050565b5f8060408385031215611fee57611fed611c27565b5b5f611ffb85828601611e64565b925050602061200c85828601611f71565b9150509250929050565b5f67ffffffffffffffff8211156120305761202f611cfa565b5b602082029050602081019050919050565b5f80fd5b5f61205761205284612016565b611d58565b9050808382526020820190506020840283018581111561207a57612079612041565b5b835b818110156120a3578061208f8882611f71565b84526020840193505060208101905061207c565b5050509392505050565b5f82601f8301126120c1576120c0611ce2565b5b81356120d1848260208601612045565b91505092915050565b5f805f606084860312156120f1576120f0611c27565b5b5f84013567ffffffffffffffff81111561210e5761210d611c2b565b5b61211a868287016120ad565b935050602084013567ffffffffffffffff81111561213b5761213a611c2b565b5b61214786828701611df1565b925050604061215886828701611e64565b9150509250925092565b61216b81611f52565b82525050565b5f6020820190506121845f830184612162565b92915050565b5f805f606084860312156121a1576121a0611c27565b5b5f6121ae86828701611e64565b93505060206121bf86828701611e64565b92505060406121d086828701611f71565b9150509250925092565b5f602082840312156121ef576121ee611c27565b5b5f6121fc84828501611e64565b91505092915050565b61220e81611caf565b8114612218575f80fd5b50565b5f8135905061222981612205565b92915050565b5f806040838503121561224557612244611c27565b5b5f61225285828601611e64565b92505060206122638582860161221b565b9150509250929050565b5f67ffffffffffffffff82111561228757612286611cfa565b5b61229082611cea565b9050602081019050919050565b5f6122af6122aa8461226d565b611d58565b9050828152602081018484840111156122cb576122ca611ce6565b5b6122d6848285611da2565b509392505050565b5f82601f8301126122f2576122f1611ce2565b5b813561230284826020860161229d565b91505092915050565b5f805f806080858703121561232357612322611c27565b5b5f61233087828801611e64565b945050602061234187828801611e64565b935050604061235287828801611f71565b925050606085013567ffffffffffffffff81111561237357612372611c2b565b5b61237f878288016122de565b91505092959194509250565b5f80604083850312156123a1576123a0611c27565b5b5f6123ae85828601611e64565b92505060206123bf85828601611e64565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061240d57607f821691505b6020821081036124205761241f6123c9565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026124827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82612447565b61248c8683612447565b95508019841693508086168417925050509392505050565b5f819050919050565b5f6124c76124c26124bd84611f52565b6124a4565b611f52565b9050919050565b5f819050919050565b6124e0836124ad565b6124f46124ec826124ce565b848454612453565b825550505050565b5f90565b6125086124fc565b6125138184846124d7565b505050565b5b818110156125365761252b5f82612500565b600181019050612519565b5050565b601f82111561257b5761254c81612426565b61255584612438565b81016020851015612564578190505b61257861257085612438565b830182612518565b50505b505050565b5f82821c905092915050565b5f61259b5f1984600802612580565b1980831691505092915050565b5f6125b3838361258c565b9150826002028217905092915050565b6125cc82611ed2565b67ffffffffffffffff8111156125e5576125e4611cfa565b5b6125ef82546123f6565b6125fa82828561253a565b5f60209050601f83116001811461262b575f8415612619578287015190505b61262385826125a8565b86555061268a565b601f19841661263986612426565b5f5b828110156126605784890151825560018201915060208501945060208101905061263b565b8683101561267d5784890151612679601f89168261258c565b8355505b6001600288020188555050505b505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6126c982611f52565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036126fb576126fa612692565b5b600182019050919050565b7f4d757374206275726e2074776f204e46547300000000000000000000000000005f82015250565b5f61273a601283611edc565b915061274582612706565b602082019050919050565b5f6020820190508181035f8301526127678161272e565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f6060820190506127ae5f830186611fb0565b6127bb6020830185612162565b6127c86040830184611fb0565b949350505050565b5f6040820190506127e35f830185611fb0565b6127f06020830184612162565b9392505050565b5f81519050919050565b5f82825260208201905092915050565b5f61281b826127f7565b6128258185612801565b9350612835818560208601611eec565b61283e81611cea565b840191505092915050565b5f60808201905061285c5f830187611fb0565b6128696020830186611fb0565b6128766040830185612162565b81810360608301526128888184612811565b905095945050505050565b5f815190506128a181611c5a565b92915050565b5f602082840312156128bc576128bb611c27565b5b5f6128c984828501612893565b91505092915050565b5f6128dc82611f52565b91506128e783611f52565b92508282039050818111156128ff576128fe612692565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffdfea2646970667358221220164288ee2bb47694a09b3f4196607732db2e584ea49a3926a1305ed5b3d8204e64736f6c634300081a0033