60806040523480156200001157600080fd5b50604051602080620031cb833981018060405281019080805190602001909291905050506040805190810160405280600f81526020017f43727970746f53637269707475726500000000000000000000000000000000008152506040805190810160405280600981526020017f53435249505455524500000000000000000000000000000000000000000000008152508181620000e06301ffc9a77c010000000000000000000000000000000000000000000000000000000002620002ed640100000000026401000000009004565b6200011d6380ac58cd7c010000000000000000000000000000000000000000000000000000000002620002ed640100000000026401000000009004565b6200015a63780e9d637c010000000000000000000000000000000000000000000000000000000002620002ed640100000000026401000000009004565b8160099080519060200190620001729291906200056d565b5080600a90805190602001906200018b9291906200056d565b50620001c9635b5e139f7c010000000000000000000000000000000000000000000000000000000002620002ed640100000000026401000000009004565b50505050620001e733620003ab640100000000026401000000009004565b33600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506200061c565b63ffffffff7c010000000000000000000000000000000000000000000000000000000002817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916141515156200033f57600080fd5b6001600080837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b620003cf81600c62000415640100000000026200257a179091906401000000009004565b8073ffffffffffffffffffffffffffffffffffffffff167f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f660405160405180910390a250565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156200045257600080fd5b6200046d8282620004d8640100000000026401000000009004565b1515156200047a57600080fd5b60018260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141515156200051657600080fd5b8260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620005b057805160ff1916838001178555620005e1565b82800160010185558215620005e1579182015b82811115620005e0578251825591602001919060010190620005c3565b5b509050620005f09190620005f4565b5090565b6200061991905b8082111562000615576000816000905550600101620005fb565b5090565b90565b612b9f806200062c6000396000f300608060405260043610610149576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806301ffc9a71461014e57806306fdde03146101b2578063081812fc14610242578063095ea7b3146102af57806318160ddd146102fc57806323b872dd146103275780632f745c591461039457806340c10f19146103f557806342842e0e1461045a5780634f6ccce7146104c75780636352211e1461050857806370a0823114610575578063715018a6146105cc5780638da5cb5b146105e35780638f32d59b1461063a57806395d89b4114610669578063983b2d56146106f9578063986502751461073c578063a22cb46514610753578063aa271e1a146107a2578063b88d4fde146107fd578063c87b56dd146108b0578063d547cfb714610956578063e985e9c5146109e6578063f2fde38b14610a61575b600080fd5b34801561015a57600080fd5b5061019860048036038101908080357bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190505050610aa4565b604051808215151515815260200191505060405180910390f35b3480156101be57600080fd5b506101c7610b0b565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156102075780820151818401526020810190506101ec565b50505050905090810190601f1680156102345780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561024e57600080fd5b5061026d60048036038101908080359060200190929190505050610bad565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156102bb57600080fd5b506102fa600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610bfe565b005b34801561030857600080fd5b50610311610d43565b6040518082815260200191505060405180910390f35b34801561033357600080fd5b50610392600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610d50565b005b3480156103a057600080fd5b506103df600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610e1f565b6040518082815260200191505060405180910390f35b34801561040157600080fd5b50610440600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610e96565b604051808215151515815260200191505060405180910390f35b34801561046657600080fd5b506104c5600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610ec0565b005b3480156104d357600080fd5b506104f260048036038101908080359060200190929190505050610ee1565b6040518082815260200191505060405180910390f35b34801561051457600080fd5b5061053360048036038101908080359060200190929190505050610f19565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561058157600080fd5b506105b6600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f97565b6040518082815260200191505060405180910390f35b3480156105d857600080fd5b506105e161101b565b005b3480156105ef57600080fd5b506105f86110ef565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561064657600080fd5b5061064f611119565b604051808215151515815260200191505060405180910390f35b34801561067557600080fd5b5061067e611171565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156106be5780820151818401526020810190506106a3565b50505050905090810190601f1680156106eb5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561070557600080fd5b5061073a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611213565b005b34801561074857600080fd5b50610751611233565b005b34801561075f57600080fd5b506107a0600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080351515906020019092919050505061123e565b005b3480156107ae57600080fd5b506107e3600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061137a565b604051808215151515815260200191505060405180910390f35b34801561080957600080fd5b506108ae600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611397565b005b3480156108bc57600080fd5b506108db600480360381019080803590602001909291905050506113bf565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561091b578082015181840152602081019050610900565b50505050905090810190601f1680156109485780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561096257600080fd5b5061096b6114ce565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156109ab578082015181840152602081019050610990565b50505050905090810190601f1680156109d85780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156109f257600080fd5b50610a47600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611531565b604051808215151515815260200191505060405180910390f35b348015610a6d57600080fd5b50610aa2600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061167f565b005b6000806000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060009054906101000a900460ff169050919050565b606060098054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610ba35780601f10610b7857610100808354040283529160200191610ba3565b820191906000526020600020905b815481529060010190602001808311610b8657829003601f168201915b5050505050905090565b6000610bb88261169e565b1515610bc357600080fd5b6002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000610c0982610f19565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515610c4657600080fd5b8073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610c865750610c858133611531565b5b1515610c9157600080fd5b826002600084815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550818373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a4505050565b6000600780549050905090565b610d5a3382611710565b1515610d6557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614151515610da157600080fd5b610dab83826117a5565b610db583826118a8565b610dbf8282611a64565b808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4505050565b6000610e2a83610f97565b82101515610e3757600080fd5b600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002082815481101515610e8357fe5b9060005260206000200154905092915050565b6000610ea13361137a565b1515610eac57600080fd5b610eb68383611b3b565b6001905092915050565b610edc8383836020604051908101604052806000815250611397565b505050565b6000610eeb610d43565b82101515610ef857600080fd5b600782815481101515610f0757fe5b90600052602060002001549050919050565b6000806001600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610f8e57600080fd5b80915050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614151515610fd457600080fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b611023611119565b151561102e57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff16600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614905090565b6060600a8054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156112095780601f106111de57610100808354040283529160200191611209565b820191906000526020600020905b8154815290600101906020018083116111ec57829003601f168201915b5050505050905090565b61121c3361137a565b151561122757600080fd5b61123081611b92565b50565b61123c33611bec565b565b3373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415151561127957600080fd5b80600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051808215151515815260200191505060405180910390a35050565b600061139082600c611c4690919063ffffffff16565b9050919050565b6113a2848484610d50565b6113ae84848484611cda565b15156113b957600080fd5b50505050565b60606114c73073ffffffffffffffffffffffffffffffffffffffff1663d547cfb76040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401600060405180830381600087803b15801561142857600080fd5b505af115801561143c573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250602081101561146657600080fd5b81019080805164010000000081111561147e57600080fd5b8281019050602081018481111561149457600080fd5b81518560018202830111640100000000821117156114b157600080fd5b50509291905050506114c284611efc565b612053565b9050919050565b60608060405190810160405280602c81526020017f687474703a2f2f7777772e63727970746f7363726970747572652e696f2f617081526020017f692f7363726970747572652f0000000000000000000000000000000000000000815250905090565b600080600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508273ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1663c4552791866040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b15801561160b57600080fd5b505af115801561161f573d6000803e3d6000fd5b505050506040513d602081101561163557600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff16141561166b5760019150611678565b611675848461209a565b91505b5092915050565b611687611119565b151561169257600080fd5b61169b8161212e565b50565b6000806001600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415915050919050565b60008061171c83610f19565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148061178b57508373ffffffffffffffffffffffffffffffffffffffff1661177384610bad565b73ffffffffffffffffffffffffffffffffffffffff16145b8061179c575061179b8185611531565b5b91505092915050565b8173ffffffffffffffffffffffffffffffffffffffff166117c582610f19565b73ffffffffffffffffffffffffffffffffffffffff161415156117e757600080fd5b600073ffffffffffffffffffffffffffffffffffffffff166002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415156118a45760006002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5050565b60008060006118b7858561222a565b600660008581526020019081526020016000205492506119236001600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208054905061235990919063ffffffff16565b9150600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208281548110151561197157fe5b9060005260206000200154905080600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020848154811015156119cb57fe5b9060005260206000200181905550600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805480919060019003611a2b9190612b22565b50600060066000868152602001908152602001600020819055508260066000838152602001908152602001600020819055505050505050565b6000611a70838361237a565b600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805490509050600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020829080600181540180825580915050906001820390600052602060002001600090919290919091505550806006600084815260200190815260200160002081905550505050565b611b4582826124d4565b600780549050600860008381526020019081526020016000208190555060078190806001815401808255809150509060018203906000526020600020016000909192909190915055505050565b611ba681600c61257a90919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f660405160405180910390a250565b611c0081600c61262a90919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb6669260405160405180910390a250565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614151515611c8357600080fd5b8260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b600080611cfc8573ffffffffffffffffffffffffffffffffffffffff166126d9565b1515611d0b5760019150611ef3565b8473ffffffffffffffffffffffffffffffffffffffff1663150b7a02338887876040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015611e00578082015181840152602081019050611de5565b50505050905090810190601f168015611e2d5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015611e4f57600080fd5b505af1158015611e63573d6000803e3d6000fd5b505050506040513d6020811015611e7957600080fd5b8101908080519060200190929190505050905063150b7a027c0100000000000000000000000000000000000000000000000000000000027bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161491505b50949350505050565b60606000806060600080861415611f4a576040805190810160405280600181526020017f3000000000000000000000000000000000000000000000000000000000000000815250945061204a565b8593505b600084141515611f74578280600101935050600a84811515611f6c57fe5b049350611f4e565b826040519080825280601f01601f191660200182016040528015611fa75781602001602082028038833980820191505090505b5091506001830390505b60008614151561204657600a86811515611fc757fe5b066030017f01000000000000000000000000000000000000000000000000000000000000000282828060019003935081518110151561200257fe5b9060200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a8681151561203e57fe5b049550611fb1565b8194505b50505050919050565b606061209283836020604051908101604052806000815250602060405190810160405280600081525060206040519081016040528060008152506126ec565b905092915050565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561216a57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff16600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b8173ffffffffffffffffffffffffffffffffffffffff1661224a82610f19565b73ffffffffffffffffffffffffffffffffffffffff1614151561226c57600080fd5b6122bf6001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461235990919063ffffffff16565b600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060006001600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b60008083831115151561236b57600080fd5b82840390508091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff166001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415156123e857600080fd5b816001600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061248d6001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612b0190919063ffffffff16565b600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415151561251057600080fd5b61251a8282611a64565b808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a45050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156125b657600080fd5b6125c08282611c46565b1515156125cc57600080fd5b60018260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561266657600080fd5b6126708282611c46565b151561267b57600080fd5b60008260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600080823b905060008111915050919050565b6060806060806060806060806000808e98508d97508c96508b95508a94508451865188518a518c51010101016040519080825280601f01601f19166020018201604052801561274a5781602001602082028038833980820191505090505b50935083925060009150600090505b885181101561280c57888181518110151561277057fe5b9060200101517f010000000000000000000000000000000000000000000000000000000000000090047f01000000000000000000000000000000000000000000000000000000000000000283838060010194508151811015156127cf57fe5b9060200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053508080600101915050612759565b600090505b87518110156128c457878181518110151561282857fe5b9060200101517f010000000000000000000000000000000000000000000000000000000000000090047f010000000000000000000000000000000000000000000000000000000000000002838380600101945081518110151561288757fe5b9060200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053508080600101915050612811565b600090505b865181101561297c5786818151811015156128e057fe5b9060200101517f010000000000000000000000000000000000000000000000000000000000000090047f010000000000000000000000000000000000000000000000000000000000000002838380600101945081518110151561293f57fe5b9060200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535080806001019150506128c9565b600090505b8551811015612a3457858181518110151561299857fe5b9060200101517f010000000000000000000000000000000000000000000000000000000000000090047f01000000000000000000000000000000000000000000000000000000000000000283838060010194508151811015156129f757fe5b9060200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053508080600101915050612981565b600090505b8451811015612aec578481815181101515612a5057fe5b9060200101517f010000000000000000000000000000000000000000000000000000000000000090047f0100000000000000000000000000000000000000000000000000000000000000028383806001019450815181101515612aaf57fe5b9060200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053508080600101915050612a39565b82995050505050505050505095945050505050565b6000808284019050838110151515612b1857600080fd5b8091505092915050565b815481835581811115612b4957818360005260206000209182019101612b489190612b4e565b5b505050565b612b7091905b80821115612b6c576000816000905550600101612b54565b5090565b905600a165627a7a723058200a31fae1a9123ad096103d503315a572be5ea4646b298efc7d690e0cf06286ee0029000000000000000000000000f57b2c51ded3a29e6891aba85459d600256cf317