608060405260006009556040518060400160405280600481526020017ff09f988000000000000000000000000000000000000000000000000000000000815250600a90816200004f9190620013ae565b506040518060400160405280600481526020017ff09f989400000000000000000000000000000000000000000000000000000000815250600b9081620000969190620013ae565b506040518060400160405280600481526020017ff09f989100000000000000000000000000000000000000000000000000000000815250600c9081620000dd9190620013ae565b50348015620000eb57600080fd5b506040518060400160405280601781526020017f43726f7373436861696e205475726b65792050726963650000000000000000008152506040518060400160405280600981526020017f43435452507269636500000000000000000000000000000000000000000000008152508160009081620001699190620013ae565b5080600190816200017b9190620013ae565b505050604051806060016040528067de41ba4fc9d91ad967ffffffffffffffff1681526020016040518060400160405280600781526020017f5365706f6c69610000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600781526020017f2330303030666600000000000000000000000000000000000000000000000000815250815250600e600080815260200190815260200160002060008201518160000160006101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555060208201518160010190816200026e9190620013ae565b506040820151816002019081620002869190620013ae565b50905050604051806060016040528067ccf0a31a221f3c9b67ffffffffffffffff1681526020016040518060400160405280600481526020017f46756a690000000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600781526020017f2366663030303000000000000000000000000000000000000000000000000000815250815250600e60006001815260200190815260200160002060008201518160000160006101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555060208201518160010190816200037b9190620013ae565b506040820151816002019081620003939190620013ae565b50905050604051806060016040528067adecc60412ce25a567ffffffffffffffff1681526020016040518060400160405280600b81526020017f424e4220546573746e657400000000000000000000000000000000000000000081525081526020016040518060400160405280600781526020017f2366373939306200000000000000000000000000000000000000000000000000815250815250600e60006002815260200190815260200160002060008201518160000160006101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506020820151816001019081620004889190620013ae565b506040820151816002019081620004a09190620013ae565b50905050731b44f3514812d835eb1bdb0acb33d3fa3351ee43600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506200050a336200051060201b60201c565b62002635565b620005238160006200052660201b60201c565b50565b60006200053a60076200057760201b60201c565b90506200054e83826200058560201b60201c565b620005608183620005ab60201b60201c565b6200057260076200067060201b60201c565b505050565b600081600001549050919050565b620005a78282604051806020016040528060008152506200068660201b60201c565b5050565b6000620005be82620006f460201b60201c565b905060006200062f620005d783620007d660201b60201c565b600e6000868152602001908152602001600020600101620006006009546200094c60201b60201c565b604051602001620006149392919062001974565b604051602081830303815290604052620007d660201b60201c565b905060008160405160200162000646919062001a97565b604051602081830303815290604052905062000669858262000ac560201b60201c565b5050505050565b6001816000016000828254019250508190555050565b62000698838362000b3f60201b60201c565b620006ad600084848462000d3860201b60201c565b620006ef576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620006e69062001b44565b60405180910390fd5b505050565b60606000600e600084815260200190815260200160002060020160405160200162000720919062001d10565b604051602081830303815290604052905060006200074362000edc60201b60201c565b60405160200162000755919062001e2f565b604051602081830303815290604052905060006040518060400160405280600681526020017f3c2f7376673e000000000000000000000000000000000000000000000000000081525090506000838383604051602001620007b99392919062001e62565b604051602081830303815290604052905080945050505050919050565b60606000825103620007fa5760405180602001604052806000815250905062000947565b60006040518060600160405280604081526020016200649560409139905060006003600285516200082c919062001ec8565b62000838919062001f32565b600462000846919062001f6a565b67ffffffffffffffff8111156200086257620008616200113f565b5b6040519080825280601f01601f191660200182016040528015620008955781602001600182028036833780820191505090505b509050600182016020820185865187015b8082101562000903576003820191508151603f8160121c168501518453600184019350603f81600c1c168501518453600184019350603f8160061c168501518453600184019350603f8116850151845360018401935050620008a6565b505060038651066001811462000922576002811462000936576200093e565b603d6001830353603d60028303536200093e565b603d60018303535b50505080925050505b919050565b60606000820362000995576040518060400160405280600181526020017f3000000000000000000000000000000000000000000000000000000000000000815250905062000ac0565b600082905060005b60008214620009cd578080620009b39062001fb5565b915050600a82620009c5919062001f32565b91506200099d565b60008167ffffffffffffffff811115620009ec57620009eb6200113f565b5b6040519080825280601f01601f19166020018201604052801562000a1f5781602001600182028036833780820191505090505b5090505b6000851462000ab95760018262000a3b919062002002565b9150600a8562000a4c91906200203d565b603062000a5a919062001ec8565b60f81b81838151811062000a735762000a7262002075565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a8562000ab1919062001f32565b945062000a23565b8093505050505b919050565b62000ad68262000fef60201b60201c565b62000b18576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000b0f906200211a565b60405180910390fd5b8060066000848152602001908152602001600020908162000b3a9190620013ae565b505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362000bb1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000ba8906200218c565b60405180910390fd5b62000bc28162000fef60201b60201c565b1562000c05576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000bfc90620021fe565b60405180910390fd5b62000c19600083836200105b60201b60201c565b6001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825462000c6b919062001ec8565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a462000d34600083836200106060201b60201c565b5050565b600062000d618473ffffffffffffffffffffffffffffffffffffffff166200106560201b60201c565b1562000ecf578373ffffffffffffffffffffffffffffffffffffffff1663150b7a0262000d936200108860201b60201c565b8786866040518563ffffffff1660e01b815260040162000db79493929190620022e4565b6020604051808303816000875af192505050801562000df657506040513d601f19601f8201168201806040525081019062000df391906200239a565b60015b62000e7e573d806000811462000e29576040519150601f19603f3d011682016040523d82523d6000602084013e62000e2e565b606091505b50600081510362000e76576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000e6d9062001b44565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161491505062000ed4565b600190505b949350505050565b6060600062000ef06200109060201b60201c565b905060095481111562000f1657600a600d908162000f0f9190620023f9565b5062000f4f565b60095481101562000f3a57600b600d908162000f339190620023f9565b5062000f4e565b600c600d908162000f4c9190620023f9565b505b5b80600981905550600d805462000f65906200119d565b80601f016020809104026020016040519081016040528092919081815260200182805462000f93906200119d565b801562000fe45780601f1062000fb85761010080835404028352916020019162000fe4565b820191906000526020600020905b81548152906001019060200180831162000fc657829003601f168201915b505050505091505090565b60008073ffffffffffffffffffffffffffffffffffffffff166002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614159050919050565b505050565b505050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b600033905090565b600080600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663feaf968c6040518163ffffffff1660e01b815260040160a060405180830381865afa15801562001101573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620011279190620025ad565b5050509150508091505090565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620011b657607f821691505b602082108103620011cc57620011cb6200116e565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620012367fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82620011f7565b620012428683620011f7565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b60006200128f6200128962001283846200125a565b62001264565b6200125a565b9050919050565b6000819050919050565b620012ab836200126e565b620012c3620012ba8262001296565b84845462001204565b825550505050565b600090565b620012da620012cb565b620012e7818484620012a0565b505050565b5b818110156200130f5762001303600082620012d0565b600181019050620012ed565b5050565b601f8211156200135e576200132881620011d2565b6200133384620011e7565b8101602085101562001343578190505b6200135b6200135285620011e7565b830182620012ec565b50505b505050565b600082821c905092915050565b6000620013836000198460080262001363565b1980831691505092915050565b60006200139e838362001370565b9150826002028217905092915050565b620013b98262001134565b67ffffffffffffffff811115620013d557620013d46200113f565b5b620013e182546200119d565b620013ee82828562001313565b600060209050601f83116001811462001426576000841562001411578287015190505b6200141d858262001390565b8655506200148d565b601f1984166200143686620011d2565b60005b82811015620014605784890151825560018201915060208501945060208101905062001439565b868310156200148057848901516200147c601f89168262001370565b8355505b6001600288020188555050505b505050505050565b600081905092915050565b7f7b226e616d65223a202243726f73732d636861696e205475726b65792050726960008201527f636520535647222c000000000000000000000000000000000000000000000000602082015250565b6000620014fe60288362001495565b91506200150b82620014a0565b602882019050919050565b7f226465736372697074696f6e223a2022535647205475726b6579204e4654732060008201527f696e20646966666572656e7420636861696e73222c0000000000000000000000602082015250565b60006200157460358362001495565b9150620015818262001516565b603582019050919050565b7f22696d616765223a2022646174613a696d6167652f7376672b786d6c3b62617360008201527f6536342c00000000000000000000000000000000000000000000000000000000602082015250565b6000620015ea60248362001495565b9150620015f7826200158c565b602482019050919050565b60005b838110156200162257808201518184015260208101905062001605565b60008484015250505050565b60006200163b8262001134565b62001647818562001495565b93506200165981856020860162001602565b80840191505092915050565b7f222c000000000000000000000000000000000000000000000000000000000000600082015250565b60006200169d60028362001495565b9150620016aa8262001665565b600282019050919050565b7f2261747472696275746573223a205b0000000000000000000000000000000000600082015250565b6000620016ed600f8362001495565b9150620016fa82620016b5565b600f82019050919050565b7f7b2274726169745f74797065223a2022736f75726365222c0000000000000000600082015250565b60006200173d60188362001495565b91506200174a8262001705565b601882019050919050565b7f2276616c7565223a202200000000000000000000000000000000000000000000600082015250565b60006200178d600a8362001495565b91506200179a8262001755565b600a82019050919050565b60008154620017b4816200119d565b620017c0818662001495565b94506001821660008114620017de5760018114620017f4576200182b565b60ff19831686528115158202860193506200182b565b620017ff85620011d2565b60005b83811015620018235781548189015260018201915060208101905062001802565b838801955050505b50505092915050565b7f227d2c0000000000000000000000000000000000000000000000000000000000600082015250565b60006200186c60038362001495565b9150620018798262001834565b600382019050919050565b7f7b2274726169745f74797065223a20227072696365222c000000000000000000600082015250565b6000620018bc60178362001495565b9150620018c98262001884565b601782019050919050565b7f227d000000000000000000000000000000000000000000000000000000000000600082015250565b60006200190c60028362001495565b91506200191982620018d4565b600282019050919050565b7f5d7d000000000000000000000000000000000000000000000000000000000000600082015250565b60006200195c60028362001495565b9150620019698262001924565b600282019050919050565b60006200198182620014ef565b91506200198e8262001565565b91506200199b82620015db565b9150620019a982866200162e565b9150620019b6826200168e565b9150620019c382620016de565b9150620019d0826200172e565b9150620019dd826200177e565b9150620019eb8285620017a5565b9150620019f8826200185d565b915062001a0582620018ad565b915062001a12826200177e565b915062001a2082846200162e565b915062001a2d82620018fd565b915062001a3a826200194d565b9150819050949350505050565b7f646174613a6170706c69636174696f6e2f6a736f6e3b6261736536342c000000600082015250565b600062001a7f601d8362001495565b915062001a8c8262001a47565b601d82019050919050565b600062001aa48262001a70565b915062001ab282846200162e565b915081905092915050565b600082825260208201905092915050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b600062001b2c60328362001abd565b915062001b398262001ace565b604082019050919050565b6000602082019050818103600083015262001b5f8162001b1d565b9050919050565b7f3c73766720786d6c6e733d27687474703a2f2f7777772e77332e6f72672f323060008201527f30302f737667272076657273696f6e3d27312e312720786d6c6e733a786c696e60208201527f6b3d27687474703a2f2f7777772e77332e6f72672f313939392f786c696e6b2760408201527f20786d6c6e733a7376676a733d27687474703a2f2f7376676a732e636f6d2f7360608201527f76676a73272077696474683d2735303027206865696768743d2735303027207060808201527f72657365727665417370656374526174696f3d276e6f6e65272076696577426f60a08201527f783d273020302035303020353030273e203c726563742077696474683d27313060c08201527f302527206865696768743d2731303025272066696c6c3d27000000000000000060e082015250565b600062001ca860f88362001495565b915062001cb58262001b66565b60f882019050919050565b7f27202f3e00000000000000000000000000000000000000000000000000000000600082015250565b600062001cf860048362001495565b915062001d058262001cc0565b600482019050919050565b600062001d1d8262001c99565b915062001d2b8284620017a5565b915062001d388262001ce9565b915081905092915050565b7f3c7465787420783d273530252720793d273530252720666f6e742d73697a653d60008201527f273132382720646f6d696e616e742d626173656c696e653d276d6964646c652760208201527f20746578742d616e63686f723d276d6964646c65273e00000000000000000000604082015250565b600062001dc760568362001495565b915062001dd48262001d43565b605682019050919050565b7f3c2f746578743e00000000000000000000000000000000000000000000000000600082015250565b600062001e1760078362001495565b915062001e248262001ddf565b600782019050919050565b600062001e3c8262001db8565b915062001e4a82846200162e565b915062001e578262001e08565b915081905092915050565b600062001e7082866200162e565b915062001e7e82856200162e565b915062001e8c82846200162e565b9150819050949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600062001ed5826200125a565b915062001ee2836200125a565b925082820190508082111562001efd5762001efc62001e99565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600062001f3f826200125a565b915062001f4c836200125a565b92508262001f5f5762001f5e62001f03565b5b828204905092915050565b600062001f77826200125a565b915062001f84836200125a565b925082820262001f94816200125a565b9150828204841483151762001fae5762001fad62001e99565b5b5092915050565b600062001fc2826200125a565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820362001ff75762001ff662001e99565b5b600182019050919050565b60006200200f826200125a565b91506200201c836200125a565b925082820390508181111562002037576200203662001e99565b5b92915050565b60006200204a826200125a565b915062002057836200125a565b9250826200206a576200206962001f03565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f45524337323155524953746f726167653a2055524920736574206f66206e6f6e60008201527f6578697374656e7420746f6b656e000000000000000000000000000000000000602082015250565b600062002102602e8362001abd565b91506200210f82620020a4565b604082019050919050565b600060208201905081810360008301526200213581620020f3565b9050919050565b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b60006200217460208362001abd565b915062002181826200213c565b602082019050919050565b60006020820190508181036000830152620021a78162002165565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b6000620021e6601c8362001abd565b9150620021f382620021ae565b602082019050919050565b600060208201905081810360008301526200221981620021d7565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200224d8262002220565b9050919050565b6200225f8162002240565b82525050565b62002270816200125a565b82525050565b600081519050919050565b600082825260208201905092915050565b6000601f19601f8301169050919050565b6000620022b08262002276565b620022bc818562002281565b9350620022ce81856020860162001602565b620022d98162002292565b840191505092915050565b6000608082019050620022fb600083018762002254565b6200230a602083018662002254565b62002319604083018562002265565b81810360608301526200232d8184620022a3565b905095945050505050565b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b62002374816200233d565b81146200238057600080fd5b50565b600081519050620023948162002369565b92915050565b600060208284031215620023b357620023b262002338565b5b6000620023c38482850162002383565b91505092915050565b600081549050620023dd816200119d565b9050919050565b60008190508160005260206000209050919050565b81810362002409575050620024f8565b6200241482620023cc565b67ffffffffffffffff81111562002430576200242f6200113f565b5b6200243c82546200119d565b6200244982828562001313565b6000601f8311600181146200247d576000841562002468578287015490505b62002474858262001390565b865550620024f1565b601f1984166200248d87620023e4565b96506200249a86620011d2565b60005b82811015620024c4578489015482556001820191506001850194506020810190506200249d565b86831015620024e45784890154620024e0601f89168262001370565b8355505b6001600288020188555050505b5050505050505b565b600069ffffffffffffffffffff82169050919050565b6200251b81620024fa565b81146200252757600080fd5b50565b6000815190506200253b8162002510565b92915050565b6000819050919050565b620025568162002541565b81146200256257600080fd5b50565b60008151905062002576816200254b565b92915050565b62002587816200125a565b81146200259357600080fd5b50565b600081519050620025a7816200257c565b92915050565b600080600080600060a08688031215620025cc57620025cb62002338565b5b6000620025dc888289016200252a565b9550506020620025ef8882890162002565565b9450506040620026028882890162002596565b9350506060620026158882890162002596565b925050608062002628888289016200252a565b9150509295509295909350565b613e5080620026456000396000f3fe608060405234801561001057600080fd5b50600436106101375760003560e01c80636352211e116100b857806398bdf6f51161007c57806398bdf6f51461033a578063a22cb46514610358578063b88d4fde14610374578063bea4dfb514610390578063c87b56dd146103ae578063e985e9c5146103de57610137565b80636352211e146102825780636a627842146102b257806370a08231146102ce57806375a86a69146102fe57806395d89b411461031c57610137565b80631cc74859116100ff5780631cc74859146101f457806323b872dd1461021057806342842e0e1461022c5780635eeda9cb14610248578063626a86b21461026457610137565b806301ffc9a71461013c578063053f14da1461016c57806306fdde031461018a578063081812fc146101a8578063095ea7b3146101d8575b600080fd5b61015660048036038101906101519190611f14565b61040e565b6040516101639190611f5c565b60405180910390f35b6101746104f0565b6040516101819190611f90565b60405180910390f35b6101926104f6565b60405161019f919061203b565b60405180910390f35b6101c260048036038101906101bd9190612089565b610588565b6040516101cf91906120f7565b60405180910390f35b6101f260048036038101906101ed919061213e565b61060d565b005b61020e6004803603810190610209919061213e565b610724565b005b61022a6004803603810190610225919061217e565b610755565b005b6102466004803603810190610241919061217e565b6107b5565b005b610262600480360381019061025d91906121d1565b6107d5565b005b61026c61086e565b604051610279919061203b565b60405180910390f35b61029c60048036038101906102979190612089565b610967565b6040516102a991906120f7565b60405180910390f35b6102cc60048036038101906102c79190612211565b610a18565b005b6102e860048036038101906102e39190612211565b610a26565b6040516102f59190611f90565b60405180910390f35b610306610add565b604051610313919061203b565b60405180910390f35b610324610b6b565b604051610331919061203b565b60405180910390f35b610342610bfd565b60405161034f9190611f90565b60405180910390f35b610372600480360381019061036d919061226a565b610c09565b005b61038e600480360381019061038991906123df565b610c1f565b005b610398610c81565b6040516103a59190611f90565b60405180910390f35b6103c860048036038101906103c39190612089565b610d22565b6040516103d5919061203b565b60405180910390f35b6103f860048036038101906103f39190612462565b610d34565b6040516104059190611f5c565b60405180910390f35b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806104d957507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806104e957506104e882610dc8565b5b9050919050565b60095481565b606060008054610505906124d1565b80601f0160208091040260200160405190810160405280929190818152602001828054610531906124d1565b801561057e5780601f106105535761010080835404028352916020019161057e565b820191906000526020600020905b81548152906001019060200180831161056157829003601f168201915b5050505050905090565b600061059382610e32565b6105d2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105c990612574565b60405180910390fd5b6004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600061061882610967565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610688576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067f90612606565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166106a7610e9e565b73ffffffffffffffffffffffffffffffffffffffff1614806106d657506106d5816106d0610e9e565b610d34565b5b610715576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161070c90612698565b60405180910390fd5b61071f8383610ea6565b505050565b60006107306007610f5f565b905061073c8382610f6d565b61074681836107d5565b6107506007610f8b565b505050565b610766610760610e9e565b82610fa1565b6107a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161079c9061272a565b60405180910390fd5b6107b083838361107f565b505050565b6107d083838360405180602001604052806000815250610c1f565b505050565b60006107e0826112e5565b905060006108376107f0836113b9565b600e600086815260200190815260200160002060010161081160095461151c565b60405160200161082393929190612bd4565b6040516020818303038152906040526113b9565b905060008160405160200161084c9190612cd5565b6040516020818303038152906040529050610867858261167c565b5050505050565b6060600061087a610c81565b905060095481111561089c57600a600d90816108969190612eb9565b506108cf565b6009548110156108bc57600b600d90816108b69190612eb9565b506108ce565b600c600d90816108cc9190612eb9565b505b5b80600981905550600d80546108e3906124d1565b80601f016020809104026020016040519081016040528092919081815260200182805461090f906124d1565b801561095c5780601f106109315761010080835404028352916020019161095c565b820191906000526020600020905b81548152906001019060200180831161093f57829003601f168201915b505050505091505090565b6000806002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610a0f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a0690613013565b60405180910390fd5b80915050919050565b610a23816000610724565b50565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610a96576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a8d906130a5565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600d8054610aea906124d1565b80601f0160208091040260200160405190810160405280929190818152602001828054610b16906124d1565b8015610b635780601f10610b3857610100808354040283529160200191610b63565b820191906000526020600020905b815481529060010190602001808311610b4657829003601f168201915b505050505081565b606060018054610b7a906124d1565b80601f0160208091040260200160405190810160405280929190818152602001828054610ba6906124d1565b8015610bf35780601f10610bc857610100808354040283529160200191610bf3565b820191906000526020600020905b815481529060010190602001808311610bd657829003601f168201915b5050505050905090565b60078060000154905081565b610c1b610c14610e9e565b83836116e9565b5050565b610c30610c2a610e9e565b83610fa1565b610c6f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c669061272a565b60405180910390fd5b610c7b84848484611855565b50505050565b600080600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663feaf968c6040518163ffffffff1660e01b815260040160a060405180830381865afa158015610cf1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d159190613152565b5050509150508091505090565b6060610d2d826118b1565b9050919050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b60008073ffffffffffffffffffffffffffffffffffffffff166002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614159050919050565b600033905090565b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16610f1983610967565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b600081600001549050919050565b610f87828260405180602001604052806000815250611a02565b5050565b6001816000016000828254019250508190555050565b6000610fac82610e32565b610feb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fe29061323f565b60405180910390fd5b6000610ff683610967565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148061103857506110378185610d34565b5b8061107657508373ffffffffffffffffffffffffffffffffffffffff1661105e84610588565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff1661109f82610967565b73ffffffffffffffffffffffffffffffffffffffff16146110f5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110ec906132d1565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611164576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161115b90613363565b60405180910390fd5b61116f838383611a5d565b61117a600082610ea6565b6001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546111ca91906133b2565b925050819055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461122191906133e6565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46112e0838383611a62565b505050565b60606000600e600084815260200190815260200160002060020160405160200161130f91906135bc565b6040516020818303038152906040529050600061132a61086e565b60405160200161133a91906136cd565b604051602081830303815290604052905060006040518060400160405280600681526020017f3c2f7376673e00000000000000000000000000000000000000000000000000008152509050600083838360405160200161139c939291906136fa565b604051602081830303815290604052905080945050505050919050565b606060008251036113db57604051806020016040528060008152509050611517565b6000604051806060016040528060408152602001613ddb604091399050600060036002855161140a91906133e6565b611414919061375a565b6004611420919061378b565b67ffffffffffffffff811115611439576114386122b4565b5b6040519080825280601f01601f19166020018201604052801561146b5781602001600182028036833780820191505090505b509050600182016020820185865187015b808210156114d7576003820191508151603f8160121c168501518453600184019350603f81600c1c168501518453600184019350603f8160061c168501518453600184019350603f811685015184536001840193505061147c565b50506003865106600181146114f357600281146115065761150e565b603d6001830353603d600283035361150e565b603d60018303535b50505080925050505b919050565b606060008203611563576040518060400160405280600181526020017f30000000000000000000000000000000000000000000000000000000000000008152509050611677565b600082905060005b6000821461159557808061157e906137cd565b915050600a8261158e919061375a565b915061156b565b60008167ffffffffffffffff8111156115b1576115b06122b4565b5b6040519080825280601f01601f1916602001820160405280156115e35781602001600182028036833780820191505090505b5090505b60008514611670576001826115fc91906133b2565b9150600a8561160b9190613815565b603061161791906133e6565b60f81b81838151811061162d5761162c613846565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a85611669919061375a565b94506115e7565b8093505050505b919050565b61168582610e32565b6116c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116bb906138e7565b60405180910390fd5b806006600084815260200190815260200160002090816116e49190613907565b505050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611757576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161174e90613a25565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31836040516118489190611f5c565b60405180910390a3505050565b61186084848461107f565b61186c84848484611a67565b6118ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118a290613ab7565b60405180910390fd5b50505050565b60606118bc82610e32565b6118fb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118f290613b49565b60405180910390fd5b600060066000848152602001908152602001600020805461191b906124d1565b80601f0160208091040260200160405190810160405280929190818152602001828054611947906124d1565b80156119945780601f1061196957610100808354040283529160200191611994565b820191906000526020600020905b81548152906001019060200180831161197757829003601f168201915b5050505050905060006119a5611bee565b905060008151036119ba5781925050506119fd565b6000825111156119ef5780826040516020016119d7929190613b69565b604051602081830303815290604052925050506119fd565b6119f884611c05565b925050505b919050565b611a0c8383611cac565b611a196000848484611a67565b611a58576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a4f90613ab7565b60405180910390fd5b505050565b505050565b505050565b6000611a888473ffffffffffffffffffffffffffffffffffffffff16611e85565b15611be1578373ffffffffffffffffffffffffffffffffffffffff1663150b7a02611ab1610e9e565b8786866040518563ffffffff1660e01b8152600401611ad39493929190613be2565b6020604051808303816000875af1925050508015611b0f57506040513d601f19601f82011682018060405250810190611b0c9190613c43565b60015b611b91573d8060008114611b3f576040519150601f19603f3d011682016040523d82523d6000602084013e611b44565b606091505b506000815103611b89576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b8090613ab7565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050611be6565b600190505b949350505050565b606060405180602001604052806000815250905090565b6060611c1082610e32565b611c4f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c4690613ce2565b60405180910390fd5b6000611c59611bee565b90506000815111611c795760405180602001604052806000815250611ca4565b80611c838461151c565b604051602001611c94929190613b69565b6040516020818303038152906040525b915050919050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611d1b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d1290613d4e565b60405180910390fd5b611d2481610e32565b15611d64576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d5b90613dba565b60405180910390fd5b611d7060008383611a5d565b6001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611dc091906133e6565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4611e8160008383611a62565b5050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b611ef181611ebc565b8114611efc57600080fd5b50565b600081359050611f0e81611ee8565b92915050565b600060208284031215611f2a57611f29611eb2565b5b6000611f3884828501611eff565b91505092915050565b60008115159050919050565b611f5681611f41565b82525050565b6000602082019050611f716000830184611f4d565b92915050565b6000819050919050565b611f8a81611f77565b82525050565b6000602082019050611fa56000830184611f81565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611fe5578082015181840152602081019050611fca565b60008484015250505050565b6000601f19601f8301169050919050565b600061200d82611fab565b6120178185611fb6565b9350612027818560208601611fc7565b61203081611ff1565b840191505092915050565b600060208201905081810360008301526120558184612002565b905092915050565b61206681611f77565b811461207157600080fd5b50565b6000813590506120838161205d565b92915050565b60006020828403121561209f5761209e611eb2565b5b60006120ad84828501612074565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006120e1826120b6565b9050919050565b6120f1816120d6565b82525050565b600060208201905061210c60008301846120e8565b92915050565b61211b816120d6565b811461212657600080fd5b50565b60008135905061213881612112565b92915050565b6000806040838503121561215557612154611eb2565b5b600061216385828601612129565b925050602061217485828601612074565b9150509250929050565b60008060006060848603121561219757612196611eb2565b5b60006121a586828701612129565b93505060206121b686828701612129565b92505060406121c786828701612074565b9150509250925092565b600080604083850312156121e8576121e7611eb2565b5b60006121f685828601612074565b925050602061220785828601612074565b9150509250929050565b60006020828403121561222757612226611eb2565b5b600061223584828501612129565b91505092915050565b61224781611f41565b811461225257600080fd5b50565b6000813590506122648161223e565b92915050565b6000806040838503121561228157612280611eb2565b5b600061228f85828601612129565b92505060206122a085828601612255565b9150509250929050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6122ec82611ff1565b810181811067ffffffffffffffff8211171561230b5761230a6122b4565b5b80604052505050565b600061231e611ea8565b905061232a82826122e3565b919050565b600067ffffffffffffffff82111561234a576123496122b4565b5b61235382611ff1565b9050602081019050919050565b82818337600083830152505050565b600061238261237d8461232f565b612314565b90508281526020810184848401111561239e5761239d6122af565b5b6123a9848285612360565b509392505050565b600082601f8301126123c6576123c56122aa565b5b81356123d684826020860161236f565b91505092915050565b600080600080608085870312156123f9576123f8611eb2565b5b600061240787828801612129565b945050602061241887828801612129565b935050604061242987828801612074565b925050606085013567ffffffffffffffff81111561244a57612449611eb7565b5b612456878288016123b1565b91505092959194509250565b6000806040838503121561247957612478611eb2565b5b600061248785828601612129565b925050602061249885828601612129565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806124e957607f821691505b6020821081036124fc576124fb6124a2565b5b50919050565b7f4552433732313a20617070726f76656420717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b600061255e602c83611fb6565b915061256982612502565b604082019050919050565b6000602082019050818103600083015261258d81612551565b9050919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b60006125f0602183611fb6565b91506125fb82612594565b604082019050919050565b6000602082019050818103600083015261261f816125e3565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f74206f7760008201527f6e6572206e6f7220617070726f76656420666f7220616c6c0000000000000000602082015250565b6000612682603883611fb6565b915061268d82612626565b604082019050919050565b600060208201905081810360008301526126b181612675565b9050919050565b7f4552433732313a207472616e736665722063616c6c6572206973206e6f74206f60008201527f776e6572206e6f7220617070726f766564000000000000000000000000000000602082015250565b6000612714603183611fb6565b915061271f826126b8565b604082019050919050565b6000602082019050818103600083015261274381612707565b9050919050565b600081905092915050565b7f7b226e616d65223a202243726f73732d636861696e205475726b65792050726960008201527f636520535647222c000000000000000000000000000000000000000000000000602082015250565b60006127b160288361274a565b91506127bc82612755565b602882019050919050565b7f226465736372697074696f6e223a2022535647205475726b6579204e4654732060008201527f696e20646966666572656e7420636861696e73222c0000000000000000000000602082015250565b600061282360358361274a565b915061282e826127c7565b603582019050919050565b7f22696d616765223a2022646174613a696d6167652f7376672b786d6c3b62617360008201527f6536342c00000000000000000000000000000000000000000000000000000000602082015250565b600061289560248361274a565b91506128a082612839565b602482019050919050565b60006128b682611fab565b6128c0818561274a565b93506128d0818560208601611fc7565b80840191505092915050565b7f222c000000000000000000000000000000000000000000000000000000000000600082015250565b600061291260028361274a565b915061291d826128dc565b600282019050919050565b7f2261747472696275746573223a205b0000000000000000000000000000000000600082015250565b600061295e600f8361274a565b915061296982612928565b600f82019050919050565b7f7b2274726169745f74797065223a2022736f75726365222c0000000000000000600082015250565b60006129aa60188361274a565b91506129b582612974565b601882019050919050565b7f2276616c7565223a202200000000000000000000000000000000000000000000600082015250565b60006129f6600a8361274a565b9150612a01826129c0565b600a82019050919050565b60008190508160005260206000209050919050565b60008154612a2e816124d1565b612a38818661274a565b94506001821660008114612a535760018114612a6857612a9b565b60ff1983168652811515820286019350612a9b565b612a7185612a0c565b60005b83811015612a9357815481890152600182019150602081019050612a74565b838801955050505b50505092915050565b7f227d2c0000000000000000000000000000000000000000000000000000000000600082015250565b6000612ada60038361274a565b9150612ae582612aa4565b600382019050919050565b7f7b2274726169745f74797065223a20227072696365222c000000000000000000600082015250565b6000612b2660178361274a565b9150612b3182612af0565b601782019050919050565b7f227d000000000000000000000000000000000000000000000000000000000000600082015250565b6000612b7260028361274a565b9150612b7d82612b3c565b600282019050919050565b7f5d7d000000000000000000000000000000000000000000000000000000000000600082015250565b6000612bbe60028361274a565b9150612bc982612b88565b600282019050919050565b6000612bdf826127a4565b9150612bea82612816565b9150612bf582612888565b9150612c0182866128ab565b9150612c0c82612905565b9150612c1782612951565b9150612c228261299d565b9150612c2d826129e9565b9150612c398285612a21565b9150612c4482612acd565b9150612c4f82612b19565b9150612c5a826129e9565b9150612c6682846128ab565b9150612c7182612b65565b9150612c7c82612bb1565b9150819050949350505050565b7f646174613a6170706c69636174696f6e2f6a736f6e3b6261736536342c000000600082015250565b6000612cbf601d8361274a565b9150612cca82612c89565b601d82019050919050565b6000612ce082612cb2565b9150612cec82846128ab565b915081905092915050565b600081549050612d06816124d1565b9050919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302612d6f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82612d32565b612d798683612d32565b95508019841693508086168417925050509392505050565b6000819050919050565b6000612db6612db1612dac84611f77565b612d91565b611f77565b9050919050565b6000819050919050565b612dd083612d9b565b612de4612ddc82612dbd565b848454612d3f565b825550505050565b600090565b612df9612dec565b612e04818484612dc7565b505050565b5b81811015612e2857612e1d600082612df1565b600181019050612e0a565b5050565b601f821115612e6d57612e3e81612a0c565b612e4784612d22565b81016020851015612e56578190505b612e6a612e6285612d22565b830182612e09565b50505b505050565b600082821c905092915050565b6000612e9060001984600802612e72565b1980831691505092915050565b6000612ea98383612e7f565b9150826002028217905092915050565b818103612ec7575050612f9f565b612ed082612cf7565b67ffffffffffffffff811115612ee957612ee86122b4565b5b612ef382546124d1565b612efe828285612e2c565b6000601f831160018114612f2d5760008415612f1b578287015490505b612f258582612e9d565b865550612f98565b601f198416612f3b87612d0d565b9650612f4686612a0c565b60005b82811015612f6e57848901548255600182019150600185019450602081019050612f49565b86831015612f8b5784890154612f87601f891682612e7f565b8355505b6001600288020188555050505b5050505050505b565b7f4552433732313a206f776e657220717565727920666f72206e6f6e657869737460008201527f656e7420746f6b656e0000000000000000000000000000000000000000000000602082015250565b6000612ffd602983611fb6565b915061300882612fa1565b604082019050919050565b6000602082019050818103600083015261302c81612ff0565b9050919050565b7f4552433732313a2062616c616e636520717565727920666f7220746865207a6560008201527f726f206164647265737300000000000000000000000000000000000000000000602082015250565b600061308f602a83611fb6565b915061309a82613033565b604082019050919050565b600060208201905081810360008301526130be81613082565b9050919050565b600069ffffffffffffffffffff82169050919050565b6130e4816130c5565b81146130ef57600080fd5b50565b600081519050613101816130db565b92915050565b6000819050919050565b61311a81613107565b811461312557600080fd5b50565b60008151905061313781613111565b92915050565b60008151905061314c8161205d565b92915050565b600080600080600060a0868803121561316e5761316d611eb2565b5b600061317c888289016130f2565b955050602061318d88828901613128565b945050604061319e8882890161313d565b93505060606131af8882890161313d565b92505060806131c0888289016130f2565b9150509295509295909350565b7f4552433732313a206f70657261746f7220717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b6000613229602c83611fb6565b9150613234826131cd565b604082019050919050565b600060208201905081810360008301526132588161321c565b9050919050565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b60006132bb602583611fb6565b91506132c68261325f565b604082019050919050565b600060208201905081810360008301526132ea816132ae565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b600061334d602483611fb6565b9150613358826132f1565b604082019050919050565b6000602082019050818103600083015261337c81613340565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006133bd82611f77565b91506133c883611f77565b92508282039050818111156133e0576133df613383565b5b92915050565b60006133f182611f77565b91506133fc83611f77565b925082820190508082111561341457613413613383565b5b92915050565b7f3c73766720786d6c6e733d27687474703a2f2f7777772e77332e6f72672f323060008201527f30302f737667272076657273696f6e3d27312e312720786d6c6e733a786c696e60208201527f6b3d27687474703a2f2f7777772e77332e6f72672f313939392f786c696e6b2760408201527f20786d6c6e733a7376676a733d27687474703a2f2f7376676a732e636f6d2f7360608201527f76676a73272077696474683d2735303027206865696768743d2735303027207060808201527f72657365727665417370656374526174696f3d276e6f6e65272076696577426f60a08201527f783d273020302035303020353030273e203c726563742077696474683d27313060c08201527f302527206865696768743d2731303025272066696c6c3d27000000000000000060e082015250565b600061355a60f88361274a565b91506135658261341a565b60f882019050919050565b7f27202f3e00000000000000000000000000000000000000000000000000000000600082015250565b60006135a660048361274a565b91506135b182613570565b600482019050919050565b60006135c78261354d565b91506135d38284612a21565b91506135de82613599565b915081905092915050565b7f3c7465787420783d273530252720793d273530252720666f6e742d73697a653d60008201527f273132382720646f6d696e616e742d626173656c696e653d276d6964646c652760208201527f20746578742d616e63686f723d276d6964646c65273e00000000000000000000604082015250565b600061366b60568361274a565b9150613676826135e9565b605682019050919050565b7f3c2f746578743e00000000000000000000000000000000000000000000000000600082015250565b60006136b760078361274a565b91506136c282613681565b600782019050919050565b60006136d88261365e565b91506136e482846128ab565b91506136ef826136aa565b915081905092915050565b600061370682866128ab565b915061371282856128ab565b915061371e82846128ab565b9150819050949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061376582611f77565b915061377083611f77565b9250826137805761377f61372b565b5b828204905092915050565b600061379682611f77565b91506137a183611f77565b92508282026137af81611f77565b915082820484148315176137c6576137c5613383565b5b5092915050565b60006137d882611f77565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361380a57613809613383565b5b600182019050919050565b600061382082611f77565b915061382b83611f77565b92508261383b5761383a61372b565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f45524337323155524953746f726167653a2055524920736574206f66206e6f6e60008201527f6578697374656e7420746f6b656e000000000000000000000000000000000000602082015250565b60006138d1602e83611fb6565b91506138dc82613875565b604082019050919050565b60006020820190508181036000830152613900816138c4565b9050919050565b61391082611fab565b67ffffffffffffffff811115613929576139286122b4565b5b61393382546124d1565b61393e828285612e2c565b600060209050601f831160018114613971576000841561395f578287015190505b6139698582612e9d565b8655506139d1565b601f19841661397f86612a0c565b60005b828110156139a757848901518255600182019150602085019450602081019050613982565b868310156139c457848901516139c0601f891682612e7f565b8355505b6001600288020188555050505b505050505050565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b6000613a0f601983611fb6565b9150613a1a826139d9565b602082019050919050565b60006020820190508181036000830152613a3e81613a02565b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b6000613aa1603283611fb6565b9150613aac82613a45565b604082019050919050565b60006020820190508181036000830152613ad081613a94565b9050919050565b7f45524337323155524953746f726167653a2055524920717565727920666f722060008201527f6e6f6e6578697374656e7420746f6b656e000000000000000000000000000000602082015250565b6000613b33603183611fb6565b9150613b3e82613ad7565b604082019050919050565b60006020820190508181036000830152613b6281613b26565b9050919050565b6000613b7582856128ab565b9150613b8182846128ab565b91508190509392505050565b600081519050919050565b600082825260208201905092915050565b6000613bb482613b8d565b613bbe8185613b98565b9350613bce818560208601611fc7565b613bd781611ff1565b840191505092915050565b6000608082019050613bf760008301876120e8565b613c0460208301866120e8565b613c116040830185611f81565b8181036060830152613c238184613ba9565b905095945050505050565b600081519050613c3d81611ee8565b92915050565b600060208284031215613c5957613c58611eb2565b5b6000613c6784828501613c2e565b91505092915050565b7f4552433732314d657461646174613a2055524920717565727920666f72206e6f60008201527f6e6578697374656e7420746f6b656e0000000000000000000000000000000000602082015250565b6000613ccc602f83611fb6565b9150613cd782613c70565b604082019050919050565b60006020820190508181036000830152613cfb81613cbf565b9050919050565b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b6000613d38602083611fb6565b9150613d4382613d02565b602082019050919050565b60006020820190508181036000830152613d6781613d2b565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b6000613da4601c83611fb6565b9150613daf82613d6e565b602082019050919050565b60006020820190508181036000830152613dd381613d97565b905091905056fe4142434445464748494a4b4c4d4e4f505152535455565758595a6162636465666768696a6b6c6d6e6f707172737475767778797a303132333435363738392b2fa2646970667358221220fa2f8e0fb6a4007c5490423990f2b98ce3d48d1785a5ba635303e35601d5df1364736f6c634300081300334142434445464748494a4b4c4d4e4f505152535455565758595a6162636465666768696a6b6c6d6e6f707172737475767778797a303132333435363738392b2f