6101606040523480156200001257600080fd5b5060405162005c3a38038062005c3a8339818101604052810190620000389190620004ec565b6040518060400160405280600b81526020017f56616c6f72656e744e46540000000000000000000000000000000000000000008152506040518060400160405280600181526020017f3100000000000000000000000000000000000000000000000000000000000000815250826040518060400160405280600b81526020017f56616c6f72656e744e46540000000000000000000000000000000000000000008152506040518060400160405280600481526020017f564e465400000000000000000000000000000000000000000000000000000000815250816000908162000122919062000798565b50806001908162000134919062000798565b5050506000600b60006101000a81548160ff021916908315150217905550600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603620001c75760006040517f1e4fbdf7000000000000000000000000000000000000000000000000000000008152600401620001be919062000890565b60405180910390fd5b620001d8816200029060201b60201c565b50620001ef600c836200035660201b90919060201c565b61012081815250506200020d600d826200035660201b90919060201c565b6101408181525050818051906020012060e08181525050808051906020012061010081815250504660a081815250506200024c620003ae60201b60201c565b608081815250503073ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff168152505050505062000a8b565b6000600b60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600b60016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60006020835110156200037c5762000374836200040b60201b60201c565b9050620003a8565b826200038e836200047860201b60201c565b60000190816200039f919062000798565b5060ff60001b90505b92915050565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60e051610100514630604051602001620003f0959493929190620008d9565b60405160208183030381529060405280519060200120905090565b600080829050601f815111156200045b57826040517f305a27a9000000000000000000000000000000000000000000000000000000008152600401620004529190620009c5565b60405180910390fd5b805181620004699062000a1b565b60001c1760001b915050919050565b6000819050919050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620004b48262000487565b9050919050565b620004c681620004a7565b8114620004d257600080fd5b50565b600081519050620004e681620004bb565b92915050565b60006020828403121562000505576200050462000482565b5b60006200051584828501620004d5565b91505092915050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620005a057607f821691505b602082108103620005b657620005b562000558565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620006207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82620005e1565b6200062c8683620005e1565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b600062000679620006736200066d8462000644565b6200064e565b62000644565b9050919050565b6000819050919050565b620006958362000658565b620006ad620006a48262000680565b848454620005ee565b825550505050565b600090565b620006c4620006b5565b620006d18184846200068a565b505050565b5b81811015620006f957620006ed600082620006ba565b600181019050620006d7565b5050565b601f82111562000748576200071281620005bc565b6200071d84620005d1565b810160208510156200072d578190505b620007456200073c85620005d1565b830182620006d6565b50505b505050565b600082821c905092915050565b60006200076d600019846008026200074d565b1980831691505092915050565b60006200078883836200075a565b9150826002028217905092915050565b620007a3826200051e565b67ffffffffffffffff811115620007bf57620007be62000529565b5b620007cb825462000587565b620007d8828285620006fd565b600060209050601f831160018114620008105760008415620007fb578287015190505b6200080785826200077a565b86555062000877565b601f1984166200082086620005bc565b60005b828110156200084a5784890151825560018201915060208501945060208101905062000823565b868310156200086a578489015162000866601f8916826200075a565b8355505b6001600288020188555050505b505050505050565b6200088a81620004a7565b82525050565b6000602082019050620008a760008301846200087f565b92915050565b6000819050919050565b620008c281620008ad565b82525050565b620008d38162000644565b82525050565b600060a082019050620008f06000830188620008b7565b620008ff6020830187620008b7565b6200090e6040830186620008b7565b6200091d6060830185620008c8565b6200092c60808301846200087f565b9695505050505050565b600082825260208201905092915050565b60005b83811015620009675780820151818401526020810190506200094a565b60008484015250505050565b6000601f19601f8301169050919050565b600062000991826200051e565b6200099d818562000936565b9350620009af81856020860162000947565b620009ba8162000973565b840191505092915050565b60006020820190508181036000830152620009e1818462000984565b905092915050565b600081519050919050565b6000819050602082019050919050565b600062000a128251620008ad565b80915050919050565b600062000a2882620009e9565b8262000a3484620009f4565b905062000a418162000a04565b9250602082101562000a845762000a7f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff83602003600802620005e1565b831692505b5050919050565b60805160a05160c05160e05161010051610120516101405161515462000ae66000396000611838015260006117fd01526000612ec701526000612ea601526000612611015260006126670152600061269001526151546000f3fe608060405234801561001057600080fd5b50600436106102065760003560e01c806370a082311161011a57806395d89b41116100ad578063c3cda5201161007c578063c3cda520146105f3578063c87b56dd1461060f578063d204c45e1461063f578063e985e9c51461065b578063f2fde38b1461068b57610206565b806395d89b411461056d5780639ab24eb01461058b578063a22cb465146105bb578063b88d4fde146105d757610206565b806384b0196e116100e957806384b0196e146104dd5780638da5cb5b146105015780638e539e8c1461051f57806391ddadf41461054f57610206565b806370a0823114610469578063715018a6146104995780637ecebe00146104a35780638456cb59146104d357610206565b80633f4ba83a1161019d5780634f6ccce71161016c5780634f6ccce71461039f578063587cde1e146103cf5780635c19a95c146103ff5780635c975abb1461041b5780636352211e1461043957610206565b80633f4ba83a1461033f57806342842e0e1461034957806342966c68146103655780634bf5d7e91461038157610206565b806318160ddd116101d957806318160ddd146102a557806323b872dd146102c35780632f745c59146102df5780633a46b1a81461030f57610206565b806301ffc9a71461020b57806306fdde031461023b578063081812fc14610259578063095ea7b314610289575b600080fd5b61022560048036038101906102209190613eb7565b6106a7565b6040516102329190613eff565b60405180910390f35b6102436106b9565b6040516102509190613faa565b60405180910390f35b610273600480360381019061026e9190614002565b61074b565b6040516102809190614070565b60405180910390f35b6102a3600480360381019061029e91906140b7565b610767565b005b6102ad61077d565b6040516102ba9190614106565b60405180910390f35b6102dd60048036038101906102d89190614121565b61078a565b005b6102f960048036038101906102f491906140b7565b61088c565b6040516103069190614106565b60405180910390f35b610329600480360381019061032491906140b7565b610935565b6040516103369190614106565b60405180910390f35b610347610a0e565b005b610363600480360381019061035e9190614121565b610a20565b005b61037f600480360381019061037a9190614002565b610a40565b005b610389610a57565b6040516103969190613faa565b60405180910390f35b6103b960048036038101906103b49190614002565b610aeb565b6040516103c69190614106565b60405180910390f35b6103e960048036038101906103e49190614174565b610b61565b6040516103f69190614070565b60405180910390f35b61041960048036038101906104149190614174565b610bca565b005b610423610be4565b6040516104309190613eff565b60405180910390f35b610453600480360381019061044e9190614002565b610bfb565b6040516104609190614070565b60405180910390f35b610483600480360381019061047e9190614174565b610c0d565b6040516104909190614106565b60405180910390f35b6104a1610cc7565b005b6104bd60048036038101906104b89190614174565b610cdb565b6040516104ca9190614106565b60405180910390f35b6104db610d24565b005b6104e5610d36565b6040516104f897969594939291906142b3565b60405180910390f35b610509610de0565b6040516105169190614070565b60405180910390f35b61053960048036038101906105349190614002565b610e0a565b6040516105469190614106565b60405180910390f35b610557610ea5565b6040516105649190614358565b60405180910390f35b610575610eb4565b6040516105829190613faa565b60405180910390f35b6105a560048036038101906105a09190614174565b610f46565b6040516105b29190614106565b60405180910390f35b6105d560048036038101906105d0919061439f565b610fb2565b005b6105f160048036038101906105ec9190614514565b610fc8565b005b61060d600480360381019061060891906145fc565b610fe5565b005b61062960048036038101906106249190614002565b6110ab565b6040516106369190613faa565b60405180910390f35b6106596004803603810190610654919061472a565b6110bd565b005b61067560048036038101906106709190614786565b6110f9565b6040516106829190613eff565b60405180910390f35b6106a560048036038101906106a09190614174565b61118d565b005b60006106b282611213565b9050919050565b6060600080546106c8906147f5565b80601f01602080910402602001604051908101604052809291908181526020018280546106f4906147f5565b80156107415780601f1061071657610100808354040283529160200191610741565b820191906000526020600020905b81548152906001019060200180831161072457829003601f168201915b5050505050905090565b600061075682611274565b50610760826112fc565b9050919050565b6107798282610774611339565b611341565b5050565b6000600880549050905090565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036107fc5760006040517f64a0ae920000000000000000000000000000000000000000000000000000000081526004016107f39190614070565b60405180910390fd5b6000610810838361080b611339565b611353565b90508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610886578382826040517f64283d7b00000000000000000000000000000000000000000000000000000000815260040161087d93929190614826565b60405180910390fd5b50505050565b600061089783610c0d565b82106108dc5782826040517fa57d13dc0000000000000000000000000000000000000000000000000000000081526004016108d392919061485d565b60405180910390fd5b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002054905092915050565b600080610940610ea5565b90508065ffffffffffff1683106109905782816040517fecd3f81e000000000000000000000000000000000000000000000000000000008152600401610987929190614886565b60405180910390fd5b6109e961099c84611369565b601060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206113c390919063ffffffff16565b79ffffffffffffffffffffffffffffffffffffffffffffffffffff1691505092915050565b610a166114bd565b610a1e611544565b565b610a3b83838360405180602001604052806000815250610fc8565b505050565b610a53600082610a4e611339565b611353565b5050565b6060610a616115a7565b65ffffffffffff16610a71610ea5565b65ffffffffffff1614610ab0576040517f6ff0714000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040518060400160405280601d81526020017f6d6f64653d626c6f636b6e756d6265722666726f6d3d64656661756c74000000815250905090565b6000610af561077d565b8210610b3b576000826040517fa57d13dc000000000000000000000000000000000000000000000000000000008152600401610b3292919061485d565b60405180910390fd5b60088281548110610b4f57610b4e6148af565b5b90600052602060002001549050919050565b6000600f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000610bd4611339565b9050610be081836115b7565b5050565b6000600b60009054906101000a900460ff16905090565b6000610c0682611274565b9050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610c805760006040517f89c62b64000000000000000000000000000000000000000000000000000000008152600401610c779190614070565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610ccf6114bd565b610cd960006116cb565b565b6000600e60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610d2c6114bd565b610d34611791565b565b600060608060008060006060610d4a6117f4565b610d5261182f565b46306000801b600067ffffffffffffffff811115610d7357610d726143e9565b5b604051908082528060200260200182016040528015610da15781602001602082028036833780820191505090505b507f0f00000000000000000000000000000000000000000000000000000000000000959493929190965096509650965096509650965090919293949596565b6000600b60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600080610e15610ea5565b90508065ffffffffffff168310610e655782816040517fecd3f81e000000000000000000000000000000000000000000000000000000008152600401610e5c929190614886565b60405180910390fd5b610e81610e7184611369565b60116113c390919063ffffffff16565b79ffffffffffffffffffffffffffffffffffffffffffffffffffff16915050919050565b6000610eaf6115a7565b905090565b606060018054610ec3906147f5565b80601f0160208091040260200160405190810160405280929190818152602001828054610eef906147f5565b8015610f3c5780601f10610f1157610100808354040283529160200191610f3c565b820191906000526020600020905b815481529060010190602001808311610f1f57829003601f168201915b5050505050905090565b6000610f8f601060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002061186a565b79ffffffffffffffffffffffffffffffffffffffffffffffffffff169050919050565b610fc4610fbd611339565b83836118d2565b5050565b610fd384848461078a565b610fdf84848484611a41565b50505050565b8342111561102a57836040517f4683af0e0000000000000000000000000000000000000000000000000000000081526004016110219190614106565b60405180910390fd5b600061108c6110847fe48329057bfd03d55e49b547132e39cffd9c1820ad7b9d4c5307691425d15adf89898960405160200161106994939291906148de565b60405160208183030381529060405280519060200120611bf8565b858585611c12565b90506110988187611c42565b6110a281886115b7565b50505050505050565b60606110b682611c9a565b9050919050565b6110c56114bd565b6000601260008154809291906110da90614952565b9190505590506110ea8382611dad565b6110f48183611dcb565b505050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6111956114bd565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036112075760006040517f1e4fbdf70000000000000000000000000000000000000000000000000000000081526004016111fe9190614070565b60405180910390fd5b611210816116cb565b50565b6000634906490660e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061126d575061126c82611e27565b5b9050919050565b60008061128083611ea1565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036112f357826040517f7e2732890000000000000000000000000000000000000000000000000000000081526004016112ea9190614106565b60405180910390fd5b80915050919050565b60006004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600033905090565b61134e8383836001611ede565b505050565b60006113608484846120a3565b90509392505050565b600065ffffffffffff80168211156113bb576030826040517f6dfcc6500000000000000000000000000000000000000000000000000000000081526004016113b29291906149df565b60405180910390fd5b819050919050565b60008083600001805490509050600080829050600583111561144b5760006113ea846120ca565b846113f59190614a08565b905061140487600001826121c3565b60000160009054906101000a900465ffffffffffff1665ffffffffffff168665ffffffffffff16101561143957809150611449565b6001816114469190614a3c565b92505b505b600061145c876000018785856121d8565b9050600081146114ae5761147f8760000160018361147a9190614a08565b6121c3565b60000160069054906101000a900479ffffffffffffffffffffffffffffffffffffffffffffffffffff166114b1565b60005b94505050505092915050565b6114c5611339565b73ffffffffffffffffffffffffffffffffffffffff166114e3610de0565b73ffffffffffffffffffffffffffffffffffffffff161461154257611506611339565b6040517f118cdaa70000000000000000000000000000000000000000000000000000000081526004016115399190614070565b60405180910390fd5b565b61154c612251565b6000600b60006101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa611590611339565b60405161159d9190614070565b60405180910390a1565b60006115b243611369565b905090565b60006115c283610b61565b905081600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f60405160405180910390a46116c681836116c186612291565b6122a3565b505050565b6000600b60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600b60016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b61179961251c565b6001600b60006101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586117dd611339565b6040516117ea9190614070565b60405180910390a1565b606061182a600c7f000000000000000000000000000000000000000000000000000000000000000061255d90919063ffffffff16565b905090565b6060611865600d7f000000000000000000000000000000000000000000000000000000000000000061255d90919063ffffffff16565b905090565b60008082600001805490509050600081146118c757611898836000016001836118939190614a08565b6121c3565b60000160069054906101000a900479ffffffffffffffffffffffffffffffffffffffffffffffffffff166118ca565b60005b915050919050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361194357816040517f5b08ba1800000000000000000000000000000000000000000000000000000000815260040161193a9190614070565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051611a349190613eff565b60405180910390a3505050565b60008373ffffffffffffffffffffffffffffffffffffffff163b1115611bf2578273ffffffffffffffffffffffffffffffffffffffff1663150b7a02611a85611339565b8685856040518563ffffffff1660e01b8152600401611aa79493929190614ac5565b6020604051808303816000875af1925050508015611ae357506040513d601f19601f82011682018060405250810190611ae09190614b26565b60015b611b67573d8060008114611b13576040519150601f19603f3d011682016040523d82523d6000602084013e611b18565b606091505b506000815103611b5f57836040517f64a0ae92000000000000000000000000000000000000000000000000000000008152600401611b569190614070565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614611bf057836040517f64a0ae92000000000000000000000000000000000000000000000000000000008152600401611be79190614070565b60405180910390fd5b505b50505050565b6000611c0b611c0561260d565b836126c4565b9050919050565b600080600080611c2488888888612705565b925092509250611c3482826127f9565b829350505050949350505050565b6000611c4d8361295d565b9050808214611c955782816040517f752d88c0000000000000000000000000000000000000000000000000000000008152600401611c8c92919061485d565b60405180910390fd5b505050565b6060611ca582611274565b506000600a60008481526020019081526020016000208054611cc6906147f5565b80601f0160208091040260200160405190810160405280929190818152602001828054611cf2906147f5565b8015611d3f5780601f10611d1457610100808354040283529160200191611d3f565b820191906000526020600020905b815481529060010190602001808311611d2257829003601f168201915b505050505090506000611d506129b4565b90506000815103611d65578192505050611da8565b600082511115611d9a578082604051602001611d82929190614b8f565b60405160208183030381529060405292505050611da8565b611da3846129d4565b925050505b919050565b611dc7828260405180602001604052806000815250612a3d565b5050565b80600a60008481526020019081526020016000209081611deb9190614d55565b507ff8e1a15aba9398e019f0b49df1a4fde98ee17ae345cb5f6b5e2c27f5033e8ce782604051611e1b9190614106565b60405180910390a15050565b60007f780e9d63000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480611e9a5750611e9982612a59565b5b9050919050565b60006002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b8080611f175750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b1561204b576000611f2784611274565b9050600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015611f9257508273ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614155b8015611fa55750611fa381846110f9565b155b15611fe757826040517fa9fbf51f000000000000000000000000000000000000000000000000000000008152600401611fde9190614070565b60405180910390fd5b811561204957838573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45b505b836004600085815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050505050565b6000806120b1858585612b3b565b90506120bf81866001612b59565b809150509392505050565b60008082036120dc57600090506121be565b600060016120e984612c13565b901c6001901b9050600181848161210357612102614e27565b5b048201901c9050600181848161211c5761211b614e27565b5b048201901c9050600181848161213557612134614e27565b5b048201901c9050600181848161214e5761214d614e27565b5b048201901c9050600181848161216757612166614e27565b5b048201901c905060018184816121805761217f614e27565b5b048201901c9050600181848161219957612198614e27565b5b048201901c90506121ba818285816121b4576121b3614e27565b5b04612cf4565b9150505b919050565b60008260005281602060002001905092915050565b60005b818310156122465760006121ef8484612d0d565b90508465ffffffffffff1661220487836121c3565b60000160009054906101000a900465ffffffffffff1665ffffffffffff16111561223057809250612240565b60018161223d9190614a3c565b93505b506121db565b819050949350505050565b612259610be4565b61228f576040517f8dfc202b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b600061229c82610c0d565b9050919050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156122df5750600081115b1561251757600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16146123fd5760008061236e601060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020612d3361236986612d49565b612db7565b79ffffffffffffffffffffffffffffffffffffffffffffffffffff16915079ffffffffffffffffffffffffffffffffffffffffffffffffffff1691508473ffffffffffffffffffffffffffffffffffffffff167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a72483836040516123f2929190614e56565b60405180910390a250505b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161461251657600080612487601060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020612df761248286612d49565b612db7565b79ffffffffffffffffffffffffffffffffffffffffffffffffffff16915079ffffffffffffffffffffffffffffffffffffffffffffffffffff1691508373ffffffffffffffffffffffffffffffffffffffff167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a724838360405161250b929190614e56565b60405180910390a250505b5b505050565b612524610be4565b1561255b576040517fd93c066500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b606060ff60001b831461257a5761257383612e0d565b9050612607565b818054612586906147f5565b80601f01602080910402602001604051908101604052809291908181526020018280546125b2906147f5565b80156125ff5780601f106125d4576101008083540402835291602001916125ff565b820191906000526020600020905b8154815290600101906020018083116125e257829003601f168201915b505050505090505b92915050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff1614801561268957507f000000000000000000000000000000000000000000000000000000000000000046145b156126b6577f000000000000000000000000000000000000000000000000000000000000000090506126c1565b6126be612e81565b90505b90565b60006040517f190100000000000000000000000000000000000000000000000000000000000081528360028201528260228201526042812091505092915050565b60008060007f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08460001c11156127455760006003859250925092506127ef565b60006001888888886040516000815260200160405260405161276a9493929190614e8e565b6020604051602081039080840390855afa15801561278c573d6000803e3d6000fd5b505050602060405103519050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036127e057600060016000801b935093509350506127ef565b8060008060001b935093509350505b9450945094915050565b6000600381111561280d5761280c614ed3565b5b8260038111156128205761281f614ed3565b5b0315612959576001600381111561283a57612839614ed3565b5b82600381111561284d5761284c614ed3565b5b03612884576040517ff645eedf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6002600381111561289857612897614ed3565b5b8260038111156128ab576128aa614ed3565b5b036128f0578060001c6040517ffce698f70000000000000000000000000000000000000000000000000000000081526004016128e79190614106565b60405180910390fd5b60038081111561290357612902614ed3565b5b82600381111561291657612915614ed3565b5b0361295857806040517fd78bce0c00000000000000000000000000000000000000000000000000000000815260040161294f9190614f02565b60405180910390fd5b5b5050565b6000600e60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000815480929190600101919050559050919050565b60606040518060600160405280602881526020016150f760289139905090565b60606129df82611274565b5060006129ea6129b4565b90506000815111612a0a5760405180602001604052806000815250612a35565b80612a1484612f17565b604051602001612a25929190614b8f565b6040516020818303038152906040525b915050919050565b612a478383612fe5565b612a546000848484611a41565b505050565b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480612b2457507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80612b345750612b33826130de565b5b9050919050565b6000612b4561251c565b612b50848484613148565b90509392505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612ba657612ba36011612df7612b9e84612d49565b612db7565b50505b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612bf357612bf06011612d33612beb84612d49565b612db7565b50505b612c0e612bff84610b61565b612c0884610b61565b836122a3565b505050565b600080600090506000608084901c1115612c3557608083901c92506080810190505b6000604084901c1115612c5057604083901c92506040810190505b6000602084901c1115612c6b57602083901c92506020810190505b6000601084901c1115612c8657601083901c92506010810190505b6000600884901c1115612ca157600883901c92506008810190505b6000600484901c1115612cbc57600483901c92506004810190505b6000600284901c1115612cd757600283901c92506002810190505b6000600184901c1115612ceb576001810190505b80915050919050565b6000818310612d035781612d05565b825b905092915050565b60006002828418612d1e9190614f1d565b828416612d2b9190614a3c565b905092915050565b60008183612d419190614f74565b905092915050565b600079ffffffffffffffffffffffffffffffffffffffffffffffffffff8016821115612daf5760d0826040517f6dfcc650000000000000000000000000000000000000000000000000000000008152600401612da6929190614ffd565b60405180910390fd5b819050919050565b600080612deb612dc5610ea5565b612ddb612dd18861186a565b868863ffffffff16565b876132659092919063ffffffff16565b91509150935093915050565b60008183612e059190615026565b905092915050565b60606000612e1a83613282565b90506000602067ffffffffffffffff811115612e3957612e386143e9565b5b6040519080825280601f01601f191660200182016040528015612e6b5781602001600182028036833780820191505090505b5090508181528360208201528092505050919050565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f7f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000004630604051602001612efc959493929190615074565b60405160208183030381529060405280519060200120905090565b606060006001612f26846132d2565b01905060008167ffffffffffffffff811115612f4557612f446143e9565b5b6040519080825280601f01601f191660200182016040528015612f775781602001600182028036833780820191505090505b509050600082602001820190505b600115612fda578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a8581612fce57612fcd614e27565b5b04945060008503612f85575b819350505050919050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036130575760006040517f64a0ae9200000000000000000000000000000000000000000000000000000000815260040161304e9190614070565b60405180910390fd5b600061306583836000611353565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146130d95760006040517f73c6ac6e0000000000000000000000000000000000000000000000000000000081526004016130d09190614070565b60405180910390fd5b505050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b600080613156858585613425565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361319a576131958461363f565b6131d9565b8473ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146131d8576131d78185613688565b5b5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff160361321b57613216846137e9565b61325a565b8473ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146132595761325885856138ba565b5b5b809150509392505050565b600080613276856000018585613945565b91509150935093915050565b60008060ff8360001c169050601f8111156132c9576040517fb3512b0c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80915050919050565b600080600090507a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310613330577a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000838161332657613325614e27565b5b0492506040810190505b6d04ee2d6d415b85acef8100000000831061336d576d04ee2d6d415b85acef8100000000838161336357613362614e27565b5b0492506020810190505b662386f26fc10000831061339c57662386f26fc10000838161339257613391614e27565b5b0492506010810190505b6305f5e10083106133c5576305f5e10083816133bb576133ba614e27565b5b0492506008810190505b61271083106133ea5761271083816133e0576133df614e27565b5b0492506004810190505b6064831061340d576064838161340357613402614e27565b5b0492506002810190505b600a831061341c576001810190505b80915050919050565b60008061343184611ea1565b9050600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161461347357613472818486613cc6565b5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614613504576134b5600085600080611ede565b6001600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055505b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614613587576001600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055505b846002600086815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550838573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4809150509392505050565b6008805490506009600083815260200190815260200160002081905550600881908060018154018082558091505060019003906000526020600020016000909190919091505550565b600061369383610c0d565b9050600060076000848152602001908152602001600020549050818114613778576000600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002054905080600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002081905550816007600083815260200190815260200160002081905550505b6007600084815260200190815260200160002060009055600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008381526020019081526020016000206000905550505050565b600060016008805490506137fd9190614a08565b905060006009600084815260200190815260200160002054905060006008838154811061382d5761382c6148af565b5b90600052602060002001549050806008838154811061384f5761384e6148af565b5b90600052602060002001819055508160096000838152602001908152602001600020819055506009600085815260200190815260200160002060009055600880548061389e5761389d6150c7565b5b6001900381819060005260206000200160009055905550505050565b600060016138c784610c0d565b6138d19190614a08565b905081600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002081905550806007600084815260200190815260200160002081905550505050565b6000806000858054905090506000811115613bd65760006139728760018461396d9190614a08565b6121c3565b6040518060400160405290816000820160009054906101000a900465ffffffffffff1665ffffffffffff1665ffffffffffff1681526020016000820160069054906101000a900479ffffffffffffffffffffffffffffffffffffffffffffffffffff1679ffffffffffffffffffffffffffffffffffffffffffffffffffff1679ffffffffffffffffffffffffffffffffffffffffffffffffffff168152505090508565ffffffffffff16816000015165ffffffffffff161115613a61576040517f2520601d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8565ffffffffffff16816000015165ffffffffffff1603613ae55784613a9388600185613a8e9190614a08565b6121c3565b60000160066101000a81548179ffffffffffffffffffffffffffffffffffffffffffffffffffff021916908379ffffffffffffffffffffffffffffffffffffffffffffffffffff160217905550613bc5565b8660405180604001604052808865ffffffffffff1681526020018779ffffffffffffffffffffffffffffffffffffffffffffffffffff168152509080600181540180825580915050600190039060005260206000200160009091909190915060008201518160000160006101000a81548165ffffffffffff021916908365ffffffffffff16021790555060208201518160000160066101000a81548179ffffffffffffffffffffffffffffffffffffffffffffffffffff021916908379ffffffffffffffffffffffffffffffffffffffffffffffffffff16021790555050505b806020015185935093505050613cbe565b8560405180604001604052808765ffffffffffff1681526020018679ffffffffffffffffffffffffffffffffffffffffffffffffffff168152509080600181540180825580915050600190039060005260206000200160009091909190915060008201518160000160006101000a81548165ffffffffffff021916908365ffffffffffff16021790555060208201518160000160066101000a81548179ffffffffffffffffffffffffffffffffffffffffffffffffffff021916908379ffffffffffffffffffffffffffffffffffffffffffffffffffff160217905550505060008492509250505b935093915050565b613cd1838383613d8a565b613d8557600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603613d4657806040517f7e273289000000000000000000000000000000000000000000000000000000008152600401613d3d9190614106565b60405180910390fd5b81816040517f177e802f000000000000000000000000000000000000000000000000000000008152600401613d7c92919061485d565b60405180910390fd5b505050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015613e4257508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480613e035750613e0284846110f9565b5b80613e4157508273ffffffffffffffffffffffffffffffffffffffff16613e29836112fc565b73ffffffffffffffffffffffffffffffffffffffff16145b5b90509392505050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b613e9481613e5f565b8114613e9f57600080fd5b50565b600081359050613eb181613e8b565b92915050565b600060208284031215613ecd57613ecc613e55565b5b6000613edb84828501613ea2565b91505092915050565b60008115159050919050565b613ef981613ee4565b82525050565b6000602082019050613f146000830184613ef0565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015613f54578082015181840152602081019050613f39565b60008484015250505050565b6000601f19601f8301169050919050565b6000613f7c82613f1a565b613f868185613f25565b9350613f96818560208601613f36565b613f9f81613f60565b840191505092915050565b60006020820190508181036000830152613fc48184613f71565b905092915050565b6000819050919050565b613fdf81613fcc565b8114613fea57600080fd5b50565b600081359050613ffc81613fd6565b92915050565b60006020828403121561401857614017613e55565b5b600061402684828501613fed565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061405a8261402f565b9050919050565b61406a8161404f565b82525050565b60006020820190506140856000830184614061565b92915050565b6140948161404f565b811461409f57600080fd5b50565b6000813590506140b18161408b565b92915050565b600080604083850312156140ce576140cd613e55565b5b60006140dc858286016140a2565b92505060206140ed85828601613fed565b9150509250929050565b61410081613fcc565b82525050565b600060208201905061411b60008301846140f7565b92915050565b60008060006060848603121561413a57614139613e55565b5b6000614148868287016140a2565b9350506020614159868287016140a2565b925050604061416a86828701613fed565b9150509250925092565b60006020828403121561418a57614189613e55565b5b6000614198848285016140a2565b91505092915050565b60007fff0000000000000000000000000000000000000000000000000000000000000082169050919050565b6141d6816141a1565b82525050565b6000819050919050565b6141ef816141dc565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61422a81613fcc565b82525050565b600061423c8383614221565b60208301905092915050565b6000602082019050919050565b6000614260826141f5565b61426a8185614200565b935061427583614211565b8060005b838110156142a657815161428d8882614230565b975061429883614248565b925050600181019050614279565b5085935050505092915050565b600060e0820190506142c8600083018a6141cd565b81810360208301526142da8189613f71565b905081810360408301526142ee8188613f71565b90506142fd60608301876140f7565b61430a6080830186614061565b61431760a08301856141e6565b81810360c08301526143298184614255565b905098975050505050505050565b600065ffffffffffff82169050919050565b61435281614337565b82525050565b600060208201905061436d6000830184614349565b92915050565b61437c81613ee4565b811461438757600080fd5b50565b60008135905061439981614373565b92915050565b600080604083850312156143b6576143b5613e55565b5b60006143c4858286016140a2565b92505060206143d58582860161438a565b9150509250929050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61442182613f60565b810181811067ffffffffffffffff821117156144405761443f6143e9565b5b80604052505050565b6000614453613e4b565b905061445f8282614418565b919050565b600067ffffffffffffffff82111561447f5761447e6143e9565b5b61448882613f60565b9050602081019050919050565b82818337600083830152505050565b60006144b76144b284614464565b614449565b9050828152602081018484840111156144d3576144d26143e4565b5b6144de848285614495565b509392505050565b600082601f8301126144fb576144fa6143df565b5b813561450b8482602086016144a4565b91505092915050565b6000806000806080858703121561452e5761452d613e55565b5b600061453c878288016140a2565b945050602061454d878288016140a2565b935050604061455e87828801613fed565b925050606085013567ffffffffffffffff81111561457f5761457e613e5a565b5b61458b878288016144e6565b91505092959194509250565b600060ff82169050919050565b6145ad81614597565b81146145b857600080fd5b50565b6000813590506145ca816145a4565b92915050565b6145d9816141dc565b81146145e457600080fd5b50565b6000813590506145f6816145d0565b92915050565b60008060008060008060c0878903121561461957614618613e55565b5b600061462789828a016140a2565b965050602061463889828a01613fed565b955050604061464989828a01613fed565b945050606061465a89828a016145bb565b935050608061466b89828a016145e7565b92505060a061467c89828a016145e7565b9150509295509295509295565b600067ffffffffffffffff8211156146a4576146a36143e9565b5b6146ad82613f60565b9050602081019050919050565b60006146cd6146c884614689565b614449565b9050828152602081018484840111156146e9576146e86143e4565b5b6146f4848285614495565b509392505050565b600082601f830112614711576147106143df565b5b81356147218482602086016146ba565b91505092915050565b6000806040838503121561474157614740613e55565b5b600061474f858286016140a2565b925050602083013567ffffffffffffffff8111156147705761476f613e5a565b5b61477c858286016146fc565b9150509250929050565b6000806040838503121561479d5761479c613e55565b5b60006147ab858286016140a2565b92505060206147bc858286016140a2565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061480d57607f821691505b6020821081036148205761481f6147c6565b5b50919050565b600060608201905061483b6000830186614061565b61484860208301856140f7565b6148556040830184614061565b949350505050565b60006040820190506148726000830185614061565b61487f60208301846140f7565b9392505050565b600060408201905061489b60008301856140f7565b6148a86020830184614349565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60006080820190506148f360008301876141e6565b6149006020830186614061565b61490d60408301856140f7565b61491a60608301846140f7565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061495d82613fcc565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361498f5761498e614923565b5b600182019050919050565b6000819050919050565b6000819050919050565b60006149c96149c46149bf8461499a565b6149a4565b614597565b9050919050565b6149d9816149ae565b82525050565b60006040820190506149f460008301856149d0565b614a0160208301846140f7565b9392505050565b6000614a1382613fcc565b9150614a1e83613fcc565b9250828203905081811115614a3657614a35614923565b5b92915050565b6000614a4782613fcc565b9150614a5283613fcc565b9250828201905080821115614a6a57614a69614923565b5b92915050565b600081519050919050565b600082825260208201905092915050565b6000614a9782614a70565b614aa18185614a7b565b9350614ab1818560208601613f36565b614aba81613f60565b840191505092915050565b6000608082019050614ada6000830187614061565b614ae76020830186614061565b614af460408301856140f7565b8181036060830152614b068184614a8c565b905095945050505050565b600081519050614b2081613e8b565b92915050565b600060208284031215614b3c57614b3b613e55565b5b6000614b4a84828501614b11565b91505092915050565b600081905092915050565b6000614b6982613f1a565b614b738185614b53565b9350614b83818560208601613f36565b80840191505092915050565b6000614b9b8285614b5e565b9150614ba78284614b5e565b91508190509392505050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302614c157fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82614bd8565b614c1f8683614bd8565b95508019841693508086168417925050509392505050565b6000614c52614c4d614c4884613fcc565b6149a4565b613fcc565b9050919050565b6000819050919050565b614c6c83614c37565b614c80614c7882614c59565b848454614be5565b825550505050565b600090565b614c95614c88565b614ca0818484614c63565b505050565b5b81811015614cc457614cb9600082614c8d565b600181019050614ca6565b5050565b601f821115614d0957614cda81614bb3565b614ce384614bc8565b81016020851015614cf2578190505b614d06614cfe85614bc8565b830182614ca5565b50505b505050565b600082821c905092915050565b6000614d2c60001984600802614d0e565b1980831691505092915050565b6000614d458383614d1b565b9150826002028217905092915050565b614d5e82613f1a565b67ffffffffffffffff811115614d7757614d766143e9565b5b614d8182546147f5565b614d8c828285614cc8565b600060209050601f831160018114614dbf5760008415614dad578287015190505b614db78582614d39565b865550614e1f565b601f198416614dcd86614bb3565b60005b82811015614df557848901518255600182019150602085019450602081019050614dd0565b86831015614e125784890151614e0e601f891682614d1b565b8355505b6001600288020188555050505b505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000604082019050614e6b60008301856140f7565b614e7860208301846140f7565b9392505050565b614e8881614597565b82525050565b6000608082019050614ea360008301876141e6565b614eb06020830186614e7f565b614ebd60408301856141e6565b614eca60608301846141e6565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b6000602082019050614f1760008301846141e6565b92915050565b6000614f2882613fcc565b9150614f3383613fcc565b925082614f4357614f42614e27565b5b828204905092915050565b600079ffffffffffffffffffffffffffffffffffffffffffffffffffff82169050919050565b6000614f7f82614f4e565b9150614f8a83614f4e565b9250828203905079ffffffffffffffffffffffffffffffffffffffffffffffffffff811115614fbc57614fbb614923565b5b92915050565b6000819050919050565b6000614fe7614fe2614fdd84614fc2565b6149a4565b614597565b9050919050565b614ff781614fcc565b82525050565b60006040820190506150126000830185614fee565b61501f60208301846140f7565b9392505050565b600061503182614f4e565b915061503c83614f4e565b9250828201905079ffffffffffffffffffffffffffffffffffffffffffffffffffff81111561506e5761506d614923565b5b92915050565b600060a08201905061508960008301886141e6565b61509660208301876141e6565b6150a360408301866141e6565b6150b060608301856140f7565b6150bd6080830184614061565b9695505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfe68747470733a2f2f676174657761792e6c69676874686f7573652e73746f726167652f697066732fa2646970667358221220efdcc49b67933c8eba501f0837b90cb37862dd25056f60d4c5efcada670b03fd64736f6c63430008180033000000000000000000000000b5204aff106dc1ffc6be909c94a6a933081db636