60a06040526127106080908152506002600a556002600b5560c8600c556000600d60006101000a81548160ff0219169083151502179055503480156200004457600080fd5b506040516200380b3803806200380b83398181016040528101906200006a9190620002d9565b81816200008c62000080620000e660201b60201c565b620000ee60201b60201c565b8160039080519060200190620000a4929190620001b7565b508060049080519060200190620000bd929190620001b7565b50620000ce620001b260201b60201c565b600181905550505060016009819055505050620004bc565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600090565b828054620001c590620003e1565b90600052602060002090601f016020900481019282620001e9576000855562000235565b82601f106200020457805160ff191683800117855562000235565b8280016001018555821562000235579182015b828111156200023457825182559160200191906001019062000217565b5b50905062000244919062000248565b5090565b5b808211156200026357600081600090555060010162000249565b5090565b60006200027e620002788462000375565b6200034c565b9050828152602081018484840111156200029757600080fd5b620002a4848285620003ab565b509392505050565b600082601f830112620002be57600080fd5b8151620002d084826020860162000267565b91505092915050565b60008060408385031215620002ed57600080fd5b600083015167ffffffffffffffff8111156200030857600080fd5b6200031685828601620002ac565b925050602083015167ffffffffffffffff8111156200033457600080fd5b6200034285828601620002ac565b9150509250929050565b6000620003586200036b565b905062000366828262000417565b919050565b6000604051905090565b600067ffffffffffffffff8211156200039357620003926200047c565b5b6200039e82620004ab565b9050602081019050919050565b60005b83811015620003cb578082015181840152602081019050620003ae565b83811115620003db576000848401525b50505050565b60006002820490506001821680620003fa57607f821691505b602082108114156200041157620004106200044d565b5b50919050565b6200042282620004ab565b810181811067ffffffffffffffff821117156200044457620004436200047c565b5b80604052505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b608051613325620004e660003960008181610a63015281816112b2015261163b01526133256000f3fe6080604052600436106101c25760003560e01c80638d859f3e116100f7578063acec338a11610095578063e438705111610064578063e43870511461062e578063e985e9c51461064a578063f2fde38b14610687578063f9c287fd146106b0576101c2565b8063acec338a14610576578063b88d4fde1461059f578063c87b56dd146105c8578063e32cb6d814610605576101c2565b806395d89b41116100d157806395d89b41146104cc57806396ae80eb146104f7578063a22cb46514610522578063a69b1cd51461054b576101c2565b80638d859f3e1461044b5780638da5cb5b146104765780638ec89e4f146104a1576101c2565b806332cb6b0c1161016457806355f804b31161013e57806355f804b3146103915780636352211e146103ba57806370a08231146103f7578063715018a614610434576101c2565b806332cb6b0c146103265780633ccfd60b1461035157806342842e0e14610368576101c2565b8063095ea7b3116101a0578063095ea7b31461026c57806318160ddd1461029557806323b872dd146102c05780632cd24a59146102e9576101c2565b806301ffc9a7146101c757806306fdde0314610204578063081812fc1461022f575b600080fd5b3480156101d357600080fd5b506101ee60048036038101906101e99190612762565b6106db565b6040516101fb9190612b5d565b60405180910390f35b34801561021057600080fd5b5061021961076d565b6040516102269190612b78565b60405180910390f35b34801561023b57600080fd5b50610256600480360381019061025191906127f9565b6107ff565b6040516102639190612af6565b60405180910390f35b34801561027857600080fd5b50610293600480360381019061028e91906126fd565b61087b565b005b3480156102a157600080fd5b506102aa610a22565b6040516102b79190612d1a565b60405180910390f35b3480156102cc57600080fd5b506102e760048036038101906102e291906125f7565b610a39565b005b3480156102f557600080fd5b50610310600480360381019061030b9190612592565b610a49565b60405161031d9190612d1a565b60405180910390f35b34801561033257600080fd5b5061033b610a61565b6040516103489190612d1a565b60405180910390f35b34801561035d57600080fd5b50610366610a85565b005b34801561037457600080fd5b5061038f600480360381019061038a91906125f7565b610b50565b005b34801561039d57600080fd5b506103b860048036038101906103b391906127b4565b610b70565b005b3480156103c657600080fd5b506103e160048036038101906103dc91906127f9565b610c02565b6040516103ee9190612af6565b60405180910390f35b34801561040357600080fd5b5061041e60048036038101906104199190612592565b610c14565b60405161042b9190612d1a565b60405180910390f35b34801561044057600080fd5b50610449610ccd565b005b34801561045757600080fd5b50610460610d55565b60405161046d9190612d1a565b60405180910390f35b34801561048257600080fd5b5061048b610d5a565b6040516104989190612af6565b60405180910390f35b3480156104ad57600080fd5b506104b6610d83565b6040516104c39190612b5d565b60405180910390f35b3480156104d857600080fd5b506104e1610d96565b6040516104ee9190612b78565b60405180910390f35b34801561050357600080fd5b5061050c610e28565b6040516105199190612d1a565b60405180910390f35b34801561052e57600080fd5b50610549600480360381019061054491906126c1565b610e2e565b005b34801561055757600080fd5b50610560610fa6565b60405161056d9190612d1a565b60405180910390f35b34801561058257600080fd5b5061059d60048036038101906105989190612739565b610fac565b005b3480156105ab57600080fd5b506105c660048036038101906105c19190612646565b611045565b005b3480156105d457600080fd5b506105ef60048036038101906105ea91906127f9565b6110b8565b6040516105fc9190612b78565b60405180910390f35b34801561061157600080fd5b5061062c60048036038101906106279190612822565b611157565b005b61064860048036038101906106439190612822565b6113c9565b005b34801561065657600080fd5b50610671600480360381019061066c91906125bb565b611752565b60405161067e9190612b5d565b60405180910390f35b34801561069357600080fd5b506106ae60048036038101906106a99190612592565b6117e6565b005b3480156106bc57600080fd5b506106c56118de565b6040516106d29190612d1a565b60405180910390f35b60006301ffc9a760e01b827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061073657506380ac58cd60e01b827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806107665750635b5e139f60e01b827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b9050919050565b60606003805461077c90612f34565b80601f01602080910402602001604051908101604052809291908181526020018280546107a890612f34565b80156107f55780601f106107ca576101008083540402835291602001916107f5565b820191906000526020600020905b8154815290600101906020018083116107d857829003601f168201915b5050505050905090565b600061080a826118e4565b610840576040517fcf4700e400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6007600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600061088682611943565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156108ee576040517f943f7b8c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1661090d611a11565b73ffffffffffffffffffffffffffffffffffffffff16146109705761093981610934611a11565b611752565b61096f576040517fcfb3b94200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b826007600084815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550818373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a4505050565b6000610a2c611a19565b6002546001540303905090565b610a44838383611a1e565b505050565b600e6020528060005260406000206000915090505481565b7f000000000000000000000000000000000000000000000000000000000000000081565b610a8d611dc8565b73ffffffffffffffffffffffffffffffffffffffff16610aab610d5a565b73ffffffffffffffffffffffffffffffffffffffff1614610b01576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610af890612c3a565b60405180910390fd5b60004790503373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015610b4c573d6000803e3d6000fd5b5050565b610b6b83838360405180602001604052806000815250611045565b505050565b610b78611dc8565b73ffffffffffffffffffffffffffffffffffffffff16610b96610d5a565b73ffffffffffffffffffffffffffffffffffffffff1614610bec576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610be390612c3a565b60405180910390fd5b8181600f9190610bfd9291906123d4565b505050565b6000610c0d82611943565b9050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610c7c576040517f8f4eb60400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054169050919050565b610cd5611dc8565b73ffffffffffffffffffffffffffffffffffffffff16610cf3610d5a565b73ffffffffffffffffffffffffffffffffffffffff1614610d49576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d4090612c3a565b60405180910390fd5b610d536000611dd0565b565b600081565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600d60009054906101000a900460ff1681565b606060048054610da590612f34565b80601f0160208091040260200160405190810160405280929190818152602001828054610dd190612f34565b8015610e1e5780601f10610df357610100808354040283529160200191610e1e565b820191906000526020600020905b815481529060010190602001808311610e0157829003601f168201915b5050505050905090565b600a5481565b610e36611a11565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610e9b576040517fb06307db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8060086000610ea8611a11565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff16610f55611a11565b73ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051610f9a9190612b5d565b60405180910390a35050565b600c5481565b610fb4611dc8565b73ffffffffffffffffffffffffffffffffffffffff16610fd2610d5a565b73ffffffffffffffffffffffffffffffffffffffff1614611028576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161101f90612c3a565b60405180910390fd5b80600d60006101000a81548160ff02191690831515021790555050565b611050848484611a1e565b60008373ffffffffffffffffffffffffffffffffffffffff163b146110b25761107b84848484611e94565b6110b1576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b50505050565b60606110c3826118e4565b6110f9576040517fa14c4b5000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000611103611ff4565b9050600081511415611124576040518060200160405280600081525061114f565b8061112e84612086565b60405160200161113f929190612ad2565b6040516020818303038152906040525b915050919050565b61115f611dc8565b73ffffffffffffffffffffffffffffffffffffffff1661117d610d5a565b73ffffffffffffffffffffffffffffffffffffffff16146111d3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111ca90612c3a565b60405180910390fd5b60026009541415611219576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161121090612c9a565b60405180910390fd5b6002600981905550600c5482600e60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461126f9190612dce565b11156112b0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112a790612cfa565b60405180910390fd5b7f0000000000000000000000000000000000000000000000000000000000000000826112da610a22565b6112e49190612dce565b1115611325576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161131c90612bfa565b60405180910390fd5b81600e60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546113709190612dce565b600e60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506113bd81836120e0565b60016009819055505050565b6002600954141561140f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161140690612c9a565b60405180910390fd5b60026009819055503373ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff1614611485576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161147c90612c1a565b60405180910390fd5b600082116114c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114bf90612cda565b60405180910390fd5b600d60009054906101000a900460ff16611517576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161150e90612bba565b60405180910390fd5b348260006115259190612e24565b14611565576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161155c90612c7a565b60405180910390fd5b600a548211156115aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115a190612c5a565b60405180910390fd5b600b5482600e60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546115f89190612dce565b1115611639576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161163090612b9a565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000082611663610a22565b61166d9190612dce565b11156116ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116a590612cba565b60405180910390fd5b81600e60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546116f99190612dce565b600e60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061174681836120e0565b60016009819055505050565b6000600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6117ee611dc8565b73ffffffffffffffffffffffffffffffffffffffff1661180c610d5a565b73ffffffffffffffffffffffffffffffffffffffff1614611862576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161185990612c3a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156118d2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118c990612bda565b60405180910390fd5b6118db81611dd0565b50565b600b5481565b6000816118ef611a19565b111580156118fe575060015482105b801561193c575060007c0100000000000000000000000000000000000000000000000000000000600560008581526020019081526020016000205416145b9050919050565b60008082905080611952611a19565b116119da576001548110156119d95760006005600083815260200190815260200160002054905060007c0100000000000000000000000000000000000000000000000000000000821614156119d7575b60008114156119cd5760056000836001900393508381526020019081526020016000205490506119a2565b8092505050611a0c565b505b5b6040517fdf2d9b4200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b919050565b600033905090565b600090565b6000611a2982611943565b90508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614611a90576040517fa114810000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008473ffffffffffffffffffffffffffffffffffffffff16611ab1611a11565b73ffffffffffffffffffffffffffffffffffffffff161480611ae05750611adf85611ada611a11565b611752565b5b80611b255750611aee611a11565b73ffffffffffffffffffffffffffffffffffffffff16611b0d846107ff565b73ffffffffffffffffffffffffffffffffffffffff16145b905080611b5e576040517f59c896be00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415611bc5576040517fea553b3400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611bd285858560016120fe565b6007600084815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600081546001900391905081905550600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008154600101919050819055507c020000000000000000000000000000000000000000000000000000000060a042901b611ccf86612104565b1717600560008581526020019081526020016000208190555060007c020000000000000000000000000000000000000000000000000000000083161415611d59576000600184019050600060056000838152602001908152602001600020541415611d57576001548114611d56578260056000838152602001908152602001600020819055505b5b505b828473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4611dc1858585600161210e565b5050505050565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60008373ffffffffffffffffffffffffffffffffffffffff1663150b7a02611eba611a11565b8786866040518563ffffffff1660e01b8152600401611edc9493929190612b11565b602060405180830381600087803b158015611ef657600080fd5b505af1925050508015611f2757506040513d601f19601f82011682018060405250810190611f24919061278b565b60015b611fa1573d8060008114611f57576040519150601f19603f3d011682016040523d82523d6000602084013e611f5c565b606091505b50600081511415611f99576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050949350505050565b6060600f805461200390612f34565b80601f016020809104026020016040519081016040528092919081815260200182805461202f90612f34565b801561207c5780601f106120515761010080835404028352916020019161207c565b820191906000526020600020905b81548152906001019060200180831161205f57829003601f168201915b5050505050905090565b60606080604051019050806040528082600183039250600a81066030018353600a810490505b80156120cc57600183039250600a81066030018353600a810490506120ac565b508181036020830392508083525050919050565b6120fa828260405180602001604052806000815250612114565b5050565b50505050565b6000819050919050565b50505050565b60006001549050600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415612182576040517f2e07630000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008314156121bd576040517fb562e8dd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6121ca60008583866120fe565b600160406001901b178302600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254019250508190555060e161222f600185146123ca565b901b60a042901b61223f86612104565b1717600560008381526020019081526020016000208190555060008190506000848201905060008673ffffffffffffffffffffffffffffffffffffffff163b14612343575b818673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46122f36000878480600101955087611e94565b612329576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80821061228457826001541461233e57600080fd5b6123ae565b5b818060010192508673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4808210612344575b8160018190555050506123c4600085838661210e565b50505050565b6000819050919050565b8280546123e090612f34565b90600052602060002090601f0160209004810192826124025760008555612449565b82601f1061241b57803560ff1916838001178555612449565b82800160010185558215612449579182015b8281111561244857823582559160200191906001019061242d565b5b509050612456919061245a565b5090565b5b8082111561247357600081600090555060010161245b565b5090565b600061248a61248584612d5a565b612d35565b9050828152602081018484840111156124a257600080fd5b6124ad848285612ef2565b509392505050565b6000813590506124c481613293565b92915050565b6000813590506124d9816132aa565b92915050565b6000813590506124ee816132c1565b92915050565b600081519050612503816132c1565b92915050565b600082601f83011261251a57600080fd5b813561252a848260208601612477565b91505092915050565b60008083601f84011261254557600080fd5b8235905067ffffffffffffffff81111561255e57600080fd5b60208301915083600182028301111561257657600080fd5b9250929050565b60008135905061258c816132d8565b92915050565b6000602082840312156125a457600080fd5b60006125b2848285016124b5565b91505092915050565b600080604083850312156125ce57600080fd5b60006125dc858286016124b5565b92505060206125ed858286016124b5565b9150509250929050565b60008060006060848603121561260c57600080fd5b600061261a868287016124b5565b935050602061262b868287016124b5565b925050604061263c8682870161257d565b9150509250925092565b6000806000806080858703121561265c57600080fd5b600061266a878288016124b5565b945050602061267b878288016124b5565b935050604061268c8782880161257d565b925050606085013567ffffffffffffffff8111156126a957600080fd5b6126b587828801612509565b91505092959194509250565b600080604083850312156126d457600080fd5b60006126e2858286016124b5565b92505060206126f3858286016124ca565b9150509250929050565b6000806040838503121561271057600080fd5b600061271e858286016124b5565b925050602061272f8582860161257d565b9150509250929050565b60006020828403121561274b57600080fd5b6000612759848285016124ca565b91505092915050565b60006020828403121561277457600080fd5b6000612782848285016124df565b91505092915050565b60006020828403121561279d57600080fd5b60006127ab848285016124f4565b91505092915050565b600080602083850312156127c757600080fd5b600083013567ffffffffffffffff8111156127e157600080fd5b6127ed85828601612533565b92509250509250929050565b60006020828403121561280b57600080fd5b60006128198482850161257d565b91505092915050565b6000806040838503121561283557600080fd5b60006128438582860161257d565b9250506020612854858286016124b5565b9150509250929050565b61286781612e7e565b82525050565b61287681612e90565b82525050565b600061288782612d8b565b6128918185612da1565b93506128a1818560208601612f01565b6128aa81613024565b840191505092915050565b60006128c082612d96565b6128ca8185612db2565b93506128da818560208601612f01565b6128e381613024565b840191505092915050565b60006128f982612d96565b6129038185612dc3565b9350612913818560208601612f01565b80840191505092915050565b600061292c602383612db2565b915061293782613035565b604082019050919050565b600061294f601d83612db2565b915061295a82613084565b602082019050919050565b6000612972602683612db2565b915061297d826130ad565b604082019050919050565b6000612995601783612db2565b91506129a0826130fc565b602082019050919050565b60006129b8601e83612db2565b91506129c382613125565b602082019050919050565b60006129db602083612db2565b91506129e68261314e565b602082019050919050565b60006129fe601b83612db2565b9150612a0982613177565b602082019050919050565b6000612a21600f83612db2565b9150612a2c826131a0565b602082019050919050565b6000612a44601f83612db2565b9150612a4f826131c9565b602082019050919050565b6000612a67601783612db2565b9150612a72826131f2565b602082019050919050565b6000612a8a601e83612db2565b9150612a958261321b565b602082019050919050565b6000612aad602983612db2565b9150612ab882613244565b604082019050919050565b612acc81612ee8565b82525050565b6000612ade82856128ee565b9150612aea82846128ee565b91508190509392505050565b6000602082019050612b0b600083018461285e565b92915050565b6000608082019050612b26600083018761285e565b612b33602083018661285e565b612b406040830185612ac3565b8181036060830152612b52818461287c565b905095945050505050565b6000602082019050612b72600083018461286d565b92915050565b60006020820190508181036000830152612b9281846128b5565b905092915050565b60006020820190508181036000830152612bb38161291f565b9050919050565b60006020820190508181036000830152612bd381612942565b9050919050565b60006020820190508181036000830152612bf381612965565b9050919050565b60006020820190508181036000830152612c1381612988565b9050919050565b60006020820190508181036000830152612c33816129ab565b9050919050565b60006020820190508181036000830152612c53816129ce565b9050919050565b60006020820190508181036000830152612c73816129f1565b9050919050565b60006020820190508181036000830152612c9381612a14565b9050919050565b60006020820190508181036000830152612cb381612a37565b9050919050565b60006020820190508181036000830152612cd381612a5a565b9050919050565b60006020820190508181036000830152612cf381612a7d565b9050919050565b60006020820190508181036000830152612d1381612aa0565b9050919050565b6000602082019050612d2f6000830184612ac3565b92915050565b6000612d3f612d50565b9050612d4b8282612f66565b919050565b6000604051905090565b600067ffffffffffffffff821115612d7557612d74612ff5565b5b612d7e82613024565b9050602081019050919050565b600081519050919050565b600081519050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600081905092915050565b6000612dd982612ee8565b9150612de483612ee8565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612e1957612e18612f97565b5b828201905092915050565b6000612e2f82612ee8565b9150612e3a83612ee8565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612e7357612e72612f97565b5b828202905092915050565b6000612e8982612ec8565b9050919050565b60008115159050919050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b82818337600083830152505050565b60005b83811015612f1f578082015181840152602081019050612f04565b83811115612f2e576000848401525b50505050565b60006002820490506001821680612f4c57607f821691505b60208210811415612f6057612f5f612fc6565b5b50919050565b612f6f82613024565b810181811067ffffffffffffffff82111715612f8e57612f8d612ff5565b5b80604052505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b7f536f7272792c20746f6f206d616e792e204f6e6c792032207065722077616c6c60008201527f65742e0000000000000000000000000000000000000000000000000000000000602082015250565b7f5075626c69632073616c6520686173206e6f7420626567756e20796574000000600082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f776f756c6420657863656564206d617820737570706c79000000000000000000600082015250565b7f5468652063616c6c657220697320616e6f7468657220636f6e74726163740000600082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f45786365656473206d617820706572207472616e73616374696f6e0000000000600082015250565b7f496e636f72726563742066756e64730000000000000000000000000000000000600082015250565b7f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00600082015250565b7f576f756c6420657863656564206d617820737570706c79000000000000000000600082015250565b7f506c65617365206d696e74206d6f7265207468616e203020746f6b656e730000600082015250565b7f746f6f206d616e7920616c7265616479206d696e74656420666f7220696e746560008201527f726e616c206d696e740000000000000000000000000000000000000000000000602082015250565b61329c81612e7e565b81146132a757600080fd5b50565b6132b381612e90565b81146132be57600080fd5b50565b6132ca81612e9c565b81146132d557600080fd5b50565b6132e181612ee8565b81146132ec57600080fd5b5056fea26469706673582212208df6bc7d91d8abc0e4e3f432195580cfe94d6943ee9f25cc21ea2d1efe59feef64736f6c6343000804003300000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000f446567656e4265696e6773204e465400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007444245494e475300000000000000000000000000000000000000000000000000