60806040526040518060600160405280602e81526020016133ad602e91396001908161002b91906102e2565b5060016002556127106003555f6004555f6009555f600c5f6101000a81548160ff021916908315150217905550348015610063575f80fd5b50335f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506103b1565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061012357607f821691505b602082108103610136576101356100df565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026101987fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8261015d565b6101a2868361015d565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f6101e66101e16101dc846101ba565b6101c3565b6101ba565b9050919050565b5f819050919050565b6101ff836101cc565b61021361020b826101ed565b848454610169565b825550505050565b5f90565b61022761021b565b6102328184846101f6565b505050565b5b818110156102555761024a5f8261021f565b600181019050610238565b5050565b601f82111561029a5761026b8161013c565b6102748461014e565b81016020851015610283578190505b61029761028f8561014e565b830182610237565b50505b505050565b5f82821c905092915050565b5f6102ba5f198460080261029f565b1980831691505092915050565b5f6102d283836102ab565b9150826002028217905092915050565b6102eb826100a8565b67ffffffffffffffff811115610304576103036100b2565b5b61030e825461010c565b610319828285610259565b5f60209050601f83116001811461034a575f8415610338578287015190505b61034285826102c7565b8655506103a9565b601f1984166103588661013c565b5f5b8281101561037f5784890151825560018201915060208501945060208101905061035a565b8683101561039c5784890151610398601f8916826102ab565b8355505b6001600288020188555050505b505050505050565b612fef806103be5f395ff3fe6080604052600436106101c5575f3560e01c806370a08231116100f6578063a22cb46511610094578063bf8fbbd211610063578063bf8fbbd214610726578063c87b56dd14610750578063e985e9c51461078c578063f14695ae146107c857610260565b8063a22cb46514610696578063b88d4fde146106be578063ba7a86b8146106e6578063ba9ddfcc146106fc57610260565b80638ef1e259116100d05780638ef1e259146105ea57806395d89b411461062657806398710d1e14610650578063a0712d681461067a57610260565b806370a082311461055a578063748dc522146105965780638da5cb5b146105c057610260565b80633ccfd60b116101635780634dd08f821161013d5780634dd08f82146104a25780635b70ea9f146104cc578063609526c2146104e25780636352211e1461051e57610260565b80633ccfd60b1461043c57806342842e0e1461045257806347064d6a1461047a57610260565b8063095ea7b31161019f578063095ea7b31461039857806318160ddd146103c057806323b872dd146103ea57806332cb6b0c1461041257610260565b806301ffc9a7146102f657806306fdde0314610332578063081812fc1461035c57610260565b36610260575f600b6101dc5f600b80549050610804565b815481106101ed576101ec611f93565b5b905f5260205f20015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690505f8190508073ffffffffffffffffffffffffffffffffffffffff166108fc3490811502906040515f60405180830381858888f1935050505015801561025e573d5f803e3d5ffd5b005b5f600b6102725f600b80549050610804565b8154811061028357610282611f93565b5b905f5260205f20015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690505f8190508073ffffffffffffffffffffffffffffffffffffffff166108fc3490811502906040515f60405180830381858888f193505050501580156102f4573d5f803e3d5ffd5b005b348015610301575f80fd5b5061031c60048036038101906103179190612026565b61085b565b604051610329919061206b565b60405180910390f35b34801561033d575f80fd5b506103466108ec565b60405161035391906120f4565b60405180910390f35b348015610367575f80fd5b50610382600480360381019061037d9190612147565b610929565b60405161038f91906121b1565b60405180910390f35b3480156103a3575f80fd5b506103be60048036038101906103b991906121f4565b6109a1565b005b3480156103cb575f80fd5b506103d4610b15565b6040516103e19190612241565b60405180910390f35b3480156103f5575f80fd5b50610410600480360381019061040b919061225a565b610b27565b005b34801561041d575f80fd5b50610426610b37565b6040516104339190612241565b60405180910390f35b348015610447575f80fd5b50610450610b3d565b005b34801561045d575f80fd5b506104786004803603810190610473919061225a565b610c15565b005b348015610485575f80fd5b506104a0600480360381019061049b91906123d6565b610c34565b005b3480156104ad575f80fd5b506104b6610cd4565b6040516104c3919061206b565b60405180910390f35b3480156104d7575f80fd5b506104e0610ce6565b005b3480156104ed575f80fd5b506105086004803603810190610503919061241d565b610804565b6040516105159190612241565b60405180910390f35b348015610529575f80fd5b50610544600480360381019061053f9190612147565b610e3b565b60405161055191906121b1565b60405180910390f35b348015610565575f80fd5b50610580600480360381019061057b919061245b565b610e4c565b60405161058d9190612241565b60405180910390f35b3480156105a1575f80fd5b506105aa610edd565b6040516105b79190612241565b60405180910390f35b3480156105cb575f80fd5b506105d4610f87565b6040516105e191906121b1565b60405180910390f35b3480156105f5575f80fd5b50610610600480360381019061060b919061245b565b610fae565b60405161061d919061206b565b60405180910390f35b348015610631575f80fd5b5061063a610fcb565b60405161064791906120f4565b60405180910390f35b34801561065b575f80fd5b50610664611008565b6040516106719190612241565b60405180910390f35b610694600480360381019061068f9190612147565b61100d565b005b3480156106a1575f80fd5b506106bc60048036038101906106b791906124b0565b6110d1565b005b3480156106c9575f80fd5b506106e460048036038101906106df919061258c565b611243565b005b3480156106f1575f80fd5b506106fa611254565b005b348015610707575f80fd5b5061071061135c565b60405161071d9190612241565b60405180910390f35b348015610731575f80fd5b5061073a611362565b6040516107479190612241565b60405180910390f35b34801561075b575f80fd5b5061077660048036038101906107719190612147565b61136c565b60405161078391906120f4565b60405180910390f35b348015610797575f80fd5b506107b260048036038101906107ad919061260c565b611488565b6040516107bf919061206b565b60405180910390f35b3480156107d3575f80fd5b506107ee60048036038101906107e99190612147565b611516565b6040516107fb91906121b1565b60405180910390f35b5f806001436108139190612677565b90505f81338660405160200161082b939291906126aa565b60405160208183030381529060405280519060200120905083815f1c610851919061270c565b9250505092915050565b5f6301ffc9a760e01b827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806108b557506380ac58cd60e01b827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806108e55750635b5e139f60e01b827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b9050919050565b60606040518060400160405280600e81526020017f50756e6b5f47656e657261746f72000000000000000000000000000000000000815250905090565b5f61093382611551565b610969576040517fcf4700e400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60075f8381526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b5f6109ab82611571565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036109e4575f80fd5b8073ffffffffffffffffffffffffffffffffffffffff16610a03611635565b73ffffffffffffffffffffffffffffffffffffffff1614610a6657610a2f81610a2a611635565b611488565b610a65576040517fcfb3b94200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b8260075f8481526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550818373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a4505050565b5f610b1e61163c565b60045403905090565b610b32838383611640565b505050565b610d0581565b3373ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610bca576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bc190612786565b60405180910390fd5b5f4790503373ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015610c11573d5f803e3d5ffd5b5050565b610c2f83838360405180602001604052805f815250611243565b505050565b3373ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610cc1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cb890612786565b60405180910390fd5b8060019081610cd0919061299e565b5050565b600c5f9054906101000a900460ff1681565b3373ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff1614610d54576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d4b90612ab7565b60405180910390fd5b5f610d5d611635565b90505f60019050610d0581610d70610b15565b610d7a9190612ad5565b1115610dbb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610db290612b52565b60405180910390fd5b6001610dc68361199d565b82610dd19190612ad5565b1115610e12576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e0990612bba565b60405180910390fd5b6106f1610e1d610b15565b1115610e2d57610e2b610edd565b505b610e3782826119f1565b5050565b5f610e4582611571565b9050919050565b5f80610e5783611b46565b03610e8e576040517f8f4eb60400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff60065f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054169050919050565b5f8060028054610eed9190612bd8565b6003600254610efc9190612bd8565b610f069190612ad5565b90505b600354811015610f82575f600290505b818182610f269190612c08565b11610f74575f610f3f8284611b4f90919063ffffffff16565b0315610f6157600254821115610f6057816002819055508192505050610f84565b5b8080610f6c90612c49565b915050610f19565b508080600101915050610f09565b505b90565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600a602052805f5260405f205f915054906101000a900460ff1681565b60606040518060400160405280600e81526020017f50756e6b5f47656e657261746f72000000000000000000000000000000000000815250905090565b600181565b5f611016611635565b9050610d0582611024610b15565b61102e9190612ad5565b111561106f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161106690612cda565b60405180910390fd5b34655af3107a4000836110829190612c08565b11156110c3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110ba90612d42565b60405180910390fd5b6110cd81836119f1565b5050565b6110d9611635565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361113d576040517fb06307db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8060085f611149611635565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff166111f2611635565b73ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051611237919061206b565b60405180910390a35050565b61124e848484611640565b50505050565b3373ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146112e1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112d890612786565b60405180910390fd5b5f1515600c5f9054906101000a900460ff16151514611335576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161132c90612daa565b60405180910390fd5b6001600c5f6101000a81548160ff02191690831515021790555061135a3360326119f1565b565b60025481565b655af3107a400081565b606061137782611551565b6113ad576040517fa14c4b5000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f600180546113bb906127d1565b80601f01602080910402602001604051908101604052809291908181526020018280546113e7906127d1565b80156114325780601f1061140957610100808354040283529160200191611432565b820191905f5260205f20905b81548152906001019060200180831161141557829003601f168201915b505050505090505f8151036114555760405180602001604052805f815250611480565b8061145f84611b64565b604051602001611470929190612ee0565b6040516020818303038152906040525b915050919050565b5f60085f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16905092915050565b600b8181548110611525575f80fd5b905f5260205f20015f915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f8161155b61163c565b1115801561156a575060045482105b9050919050565b5f808290508061157f61163c565b116115fe576004548110156115fd575f60055f8381526020019081526020015f205490505f7c01000000000000000000000000000000000000000000000000000000008216036115fb575b5f81036115f15760055f836001900393508381526020019081526020015f205490506115ca565b8092505050611630565b505b5b6040517fdf2d9b4200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b919050565b5f33905090565b5f90565b5f61164a82611571565b90508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146116b1576040517fa114810000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f60075f8481526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690505f8573ffffffffffffffffffffffffffffffffffffffff16611705611635565b73ffffffffffffffffffffffffffffffffffffffff16148061173457506117338661172e611635565b611488565b5b806117715750611742611635565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b9050806117aa576040517f59c896be00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f6117b483611b46565b146117ed5760075f8581526020019081526020015f205f6101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690555b60065f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8154600190039190508190555060065f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8154600101919050819055507c020000000000000000000000000000000000000000000000000000000060a042901b6118ae87611b46565b171760055f8681526020019081526020015f20819055505f7c020000000000000000000000000000000000000000000000000000000084160361192d575f6001850190505f60055f8381526020019081526020015f20540361192b57600454811461192a578360055f8381526020019081526020015f20819055505b5b505b838573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46119958686866001611bbe565b505050505050565b5f67ffffffffffffffff604060065f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054901c169050919050565b5f60045490505f8203611a30576040517fb562e8dd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600160406001901b17820260065f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f828254019250508190555060e1611a9260018414611e33565b901b60a042901b611aa285611b46565b171760055f8381526020019081526020015f20819055505f8190505f83820190505b818060010192508573ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4808210611ac457816004819055505050611b415f848385611bbe565b505050565b5f819050919050565b5f8183611b5c919061270c565b905092915050565b60606080604051019050806040528082600183039250600a81066030018353600a810490505b8015611baa57600183039250600a81066030018353600a81049050611b8a565b508181036020830392508083525050919050565b5f339050600a5f8273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16158015611c2257506032611c1f82610e4c565b10155b15611cdd576001600a5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600b81908060018154018082558091505060019003905f5260205f20015f9091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b600a5f8273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff168015611d3b57506032611d3982610e4c565b105b15611e2c575f600a5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505f5b600b80549050811015611e2a578173ffffffffffffffffffffffffffffffffffffffff16600b8281548110611dce57611dcd611f93565b5b905f5260205f20015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603611e1d57611e1c600b82611e3c565b5b8080600101915050611d96565b505b5050505050565b5f819050919050565b80828054905011611e82576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e7990612f6e565b60405180910390fd5b5f8190505b60018380549050611e989190612677565b811015611f4b5782600182611ead9190612ad5565b81548110611ebe57611ebd611f93565b5b905f5260205f20015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16838281548110611ef957611ef8611f93565b5b905f5260205f20015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508080600101915050611e87565b5081805480611f5d57611f5c612f8c565b5b600190038181905f5260205f20015f6101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905590555050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f604051905090565b5f80fd5b5f80fd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61200581611fd1565b811461200f575f80fd5b50565b5f8135905061202081611ffc565b92915050565b5f6020828403121561203b5761203a611fc9565b5b5f61204884828501612012565b91505092915050565b5f8115159050919050565b61206581612051565b82525050565b5f60208201905061207e5f83018461205c565b92915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f6120c682612084565b6120d0818561208e565b93506120e081856020860161209e565b6120e9816120ac565b840191505092915050565b5f6020820190508181035f83015261210c81846120bc565b905092915050565b5f819050919050565b61212681612114565b8114612130575f80fd5b50565b5f813590506121418161211d565b92915050565b5f6020828403121561215c5761215b611fc9565b5b5f61216984828501612133565b91505092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61219b82612172565b9050919050565b6121ab81612191565b82525050565b5f6020820190506121c45f8301846121a2565b92915050565b6121d381612191565b81146121dd575f80fd5b50565b5f813590506121ee816121ca565b92915050565b5f806040838503121561220a57612209611fc9565b5b5f612217858286016121e0565b925050602061222885828601612133565b9150509250929050565b61223b81612114565b82525050565b5f6020820190506122545f830184612232565b92915050565b5f805f6060848603121561227157612270611fc9565b5b5f61227e868287016121e0565b935050602061228f868287016121e0565b92505060406122a086828701612133565b9150509250925092565b5f80fd5b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6122e8826120ac565b810181811067ffffffffffffffff82111715612307576123066122b2565b5b80604052505050565b5f612319611fc0565b905061232582826122df565b919050565b5f67ffffffffffffffff821115612344576123436122b2565b5b61234d826120ac565b9050602081019050919050565b828183375f83830152505050565b5f61237a6123758461232a565b612310565b905082815260208101848484011115612396576123956122ae565b5b6123a184828561235a565b509392505050565b5f82601f8301126123bd576123bc6122aa565b5b81356123cd848260208601612368565b91505092915050565b5f602082840312156123eb576123ea611fc9565b5b5f82013567ffffffffffffffff81111561240857612407611fcd565b5b612414848285016123a9565b91505092915050565b5f806040838503121561243357612432611fc9565b5b5f61244085828601612133565b925050602061245185828601612133565b9150509250929050565b5f602082840312156124705761246f611fc9565b5b5f61247d848285016121e0565b91505092915050565b61248f81612051565b8114612499575f80fd5b50565b5f813590506124aa81612486565b92915050565b5f80604083850312156124c6576124c5611fc9565b5b5f6124d3858286016121e0565b92505060206124e48582860161249c565b9150509250929050565b5f67ffffffffffffffff821115612508576125076122b2565b5b612511826120ac565b9050602081019050919050565b5f61253061252b846124ee565b612310565b90508281526020810184848401111561254c5761254b6122ae565b5b61255784828561235a565b509392505050565b5f82601f830112612573576125726122aa565b5b813561258384826020860161251e565b91505092915050565b5f805f80608085870312156125a4576125a3611fc9565b5b5f6125b1878288016121e0565b94505060206125c2878288016121e0565b93505060406125d387828801612133565b925050606085013567ffffffffffffffff8111156125f4576125f3611fcd565b5b6126008782880161255f565b91505092959194509250565b5f806040838503121561262257612621611fc9565b5b5f61262f858286016121e0565b9250506020612640858286016121e0565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61268182612114565b915061268c83612114565b92508282039050818111156126a4576126a361264a565b5b92915050565b5f6060820190506126bd5f830186612232565b6126ca60208301856121a2565b6126d76040830184612232565b949350505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61271682612114565b915061272183612114565b925082612731576127306126df565b5b828206905092915050565b7f6e6f74204f776e657200000000000000000000000000000000000000000000005f82015250565b5f61277060098361208e565b915061277b8261273c565b602082019050919050565b5f6020820190508181035f83015261279d81612764565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806127e857607f821691505b6020821081036127fb576127fa6127a4565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f6008830261285d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82612822565b6128678683612822565b95508019841693508086168417925050509392505050565b5f819050919050565b5f6128a261289d61289884612114565b61287f565b612114565b9050919050565b5f819050919050565b6128bb83612888565b6128cf6128c7826128a9565b84845461282e565b825550505050565b5f90565b6128e36128d7565b6128ee8184846128b2565b505050565b5b81811015612911576129065f826128db565b6001810190506128f4565b5050565b601f8211156129565761292781612801565b61293084612813565b8101602085101561293f578190505b61295361294b85612813565b8301826128f3565b50505b505050565b5f82821c905092915050565b5f6129765f198460080261295b565b1980831691505092915050565b5f61298e8383612967565b9150826002028217905092915050565b6129a782612084565b67ffffffffffffffff8111156129c0576129bf6122b2565b5b6129ca82546127d1565b6129d5828285612915565b5f60209050601f831160018114612a06575f84156129f4578287015190505b6129fe8582612983565b865550612a65565b601f198416612a1486612801565b5f5b82811015612a3b57848901518255600182019150602085019450602081019050612a16565b86831015612a585784890151612a54601f891682612967565b8355505b6001600288020188555050505b505050505050565b7f6e6f2053637269707400000000000000000000000000000000000000000000005f82015250565b5f612aa160098361208e565b9150612aac82612a6d565b602082019050919050565b5f6020820190508181035f830152612ace81612a95565b9050919050565b5f612adf82612114565b9150612aea83612114565b9250828201905080821115612b0257612b0161264a565b5b92915050565b7f467265656d696e7420536f6c64204f75740000000000000000000000000000005f82015250565b5f612b3c60118361208e565b9150612b4782612b08565b602082019050919050565b5f6020820190508181035f830152612b6981612b30565b9050919050565b7f4d6178207065722057616c6c65740000000000000000000000000000000000005f82015250565b5f612ba4600e8361208e565b9150612baf82612b70565b602082019050919050565b5f6020820190508181035f830152612bd181612b98565b9050919050565b5f612be282612114565b9150612bed83612114565b925082612bfd57612bfc6126df565b5b828204905092915050565b5f612c1282612114565b9150612c1d83612114565b9250828202612c2b81612114565b91508282048414831517612c4257612c4161264a565b5b5092915050565b5f612c5382612114565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612c8557612c8461264a565b5b600182019050919050565b7f536f6c64204f75740000000000000000000000000000000000000000000000005f82015250565b5f612cc460088361208e565b9150612ccf82612c90565b602082019050919050565b5f6020820190508181035f830152612cf181612cb8565b9050919050565b7f56616c756520746f204c6f7700000000000000000000000000000000000000005f82015250565b5f612d2c600c8361208e565b9150612d3782612cf8565b602082019050919050565b5f6020820190508181035f830152612d5981612d20565b9050919050565b7f55736564206f6e6c79204f6e63650000000000000000000000000000000000005f82015250565b5f612d94600e8361208e565b9150612d9f82612d60565b602082019050919050565b5f6020820190508181035f830152612dc181612d88565b9050919050565b5f81905092915050565b7f697066733a2f2f000000000000000000000000000000000000000000000000005f82015250565b5f612e06600783612dc8565b9150612e1182612dd2565b600782019050919050565b5f612e2682612084565b612e308185612dc8565b9350612e4081856020860161209e565b80840191505092915050565b7f2f000000000000000000000000000000000000000000000000000000000000005f82015250565b5f612e80600183612dc8565b9150612e8b82612e4c565b600182019050919050565b7f2e6a736f6e0000000000000000000000000000000000000000000000000000005f82015250565b5f612eca600583612dc8565b9150612ed582612e96565b600582019050919050565b5f612eea82612dfa565b9150612ef68285612e1c565b9150612f0182612e74565b9150612f0d8284612e1c565b9150612f1882612ebe565b91508190509392505050565b7f4f7574206f6620626f756e6473000000000000000000000000000000000000005f82015250565b5f612f58600d8361208e565b9150612f6382612f24565b602082019050919050565b5f6020820190508181035f830152612f8581612f4c565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffdfea26469706673582212202fe3aa8bc03b7c37793123bc61b79d5c422f7dd65f26fb941ca76198cad80ad664736f6c634300081a0033516d62376569733332363466684645755336797a6266394c5757676a4757624c677534774d7767646d32787a5933