60c0604052734cf76043b3f97ba06917cbd90f9e3a2aac1b306e600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600e60006101000a81548160ff0219169083151502179055506000600e60016101000a81548160ff0219169083151502179055506000600e60026101000a81548160ff0219169083151502179055506001601060006101000a81548160ff021916908315150217905550348015620000d257600080fd5b506040518060400160405280600c81526020017f4368696e657365546967657200000000000000000000000000000000000000008152506040518060400160405280600c81526020017f4368696e6573655469676572000000000000000000000000000000000000000081525081600390805190602001906200015792919062000c27565b5080600490805190602001906200017092919062000c27565b5050506200019362000187620006e760201b60201c565b620006ef60201b60201c565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050620001cd816001620007b560201b60201c565b8073ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff16815250508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200024d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000273919062000d41565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620002db573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000301919062000d41565b6040518363ffffffff1660e01b81526004016200032092919062000d84565b6020604051808303816000875af115801562000340573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000366919062000d41565b73ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff1681525050620003ae60a0516001620007b560201b60201c565b620003c360a05160016200089f60201b60201c565b60006002905060006001905060008060006003905060006001905060008060006a52b7d2dcc80cd2e400000090506a01a784379d99db42000000600b819055506a01a784379d99db42000000600d8190555061271060058262000427919062000dea565b62000433919062000e7a565b600c81905550886014819055508760158190555086601681905550856017819055506017546016546015546014546200046d919062000eb2565b62000479919062000eb2565b62000485919062000eb2565b6013819055508460198190555083601a8190555082601b8190555081601c81905550601c54601b54601a54601954620004bf919062000eb2565b620004cb919062000eb2565b620004d7919062000eb2565b60188190555073da65f17cd7fe158224cb261a494876c301b57754600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073ff3bfcf4767b6a86c081bfcefe824d77b9a32c83600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073da65f17cd7fe158224cb261a494876c301b57754600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550731d3e8d72293e819339df502e73abeaff281d4bed600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555062000653620006456200094060201b60201c565b60016200096a60201b60201c565b620006663060016200096a60201b60201c565b6200067b61dead60016200096a60201b60201c565b6200069d6200068f6200094060201b60201c565b6001620007b560201b60201c565b620006b0306001620007b560201b60201c565b620006c561dead6001620007b560201b60201c565b620006d7338262000aa460201b60201c565b50505050505050505050620010d1565b600033905090565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b620007c5620006e760201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16620007eb6200094060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff161462000844576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200083b9062000f70565b60405180910390fd5b80602260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b80602360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508015158273ffffffffffffffffffffffffffffffffffffffff167fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab60405160405180910390a35050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6200097a620006e760201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16620009a06200094060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1614620009f9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620009f09062000f70565b60405180910390fd5b80602160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df78260405162000a98919062000faf565b60405180910390a25050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141562000b17576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000b0e906200101c565b60405180910390fd5b62000b2b6000838362000c1d60201b60201c565b806002600082825462000b3f919062000eb2565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825462000b96919062000eb2565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405162000bfd91906200104f565b60405180910390a362000c196000838362000c2260201b60201c565b5050565b505050565b505050565b82805462000c35906200109b565b90600052602060002090601f01602090048101928262000c59576000855562000ca5565b82601f1062000c7457805160ff191683800117855562000ca5565b8280016001018555821562000ca5579182015b8281111562000ca457825182559160200191906001019062000c87565b5b50905062000cb4919062000cb8565b5090565b5b8082111562000cd357600081600090555060010162000cb9565b5090565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000d098262000cdc565b9050919050565b62000d1b8162000cfc565b811462000d2757600080fd5b50565b60008151905062000d3b8162000d10565b92915050565b60006020828403121562000d5a5762000d5962000cd7565b5b600062000d6a8482850162000d2a565b91505092915050565b62000d7e8162000cfc565b82525050565b600060408201905062000d9b600083018562000d73565b62000daa602083018462000d73565b9392505050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600062000df78262000db1565b915062000e048362000db1565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161562000e405762000e3f62000dbb565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600062000e878262000db1565b915062000e948362000db1565b92508262000ea75762000ea662000e4b565b5b828204905092915050565b600062000ebf8262000db1565b915062000ecc8362000db1565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111562000f045762000f0362000dbb565b5b828201905092915050565b600082825260208201905092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600062000f5860208362000f0f565b915062000f658262000f20565b602082019050919050565b6000602082019050818103600083015262000f8b8162000f49565b9050919050565b60008115159050919050565b62000fa98162000f92565b82525050565b600060208201905062000fc6600083018462000f9e565b92915050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b600062001004601f8362000f0f565b9150620010118262000fcc565b602082019050919050565b60006020820190508181036000830152620010378162000ff5565b9050919050565b620010498162000db1565b82525050565b60006020820190506200106660008301846200103e565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620010b457607f821691505b60208210811415620010cb57620010ca6200106c565b5b50919050565b60805160a051615d5262001136600039600081816114b001528181611731015281816120b8015261319101526000818161111c015281816131390152818161436d0152818161444e015281816144750152818161451101526145380152615d526000f3fe6080604052600436106103d25760003560e01c80638da5cb5b116101fd578063c876d0b911610118578063e7ad9fcd116100ab578063f2fde38b1161007a578063f2fde38b14610e86578063f637434214610eaf578063f8b45b0514610eda578063fb002c9714610f05578063fd72e22a14610f30576103d9565b8063e7ad9fcd14610ddc578063e884f26014610e05578063ef8700e514610e30578063f11a24d314610e5b576103d9565b8063dd62ed3e116100e7578063dd62ed3e14610cfa578063e1bc339414610d37578063e2f4560514610d74578063e596219514610d9f576103d9565b8063c876d0b914610c3c578063d257b34f14610c67578063d469801614610ca4578063d85ba06314610ccf576103d9565b8063b204141111610190578063c02466681161015f578063c024666814610b94578063c04a541414610bbd578063c3f70b5214610be8578063c79c04fd14610c13576103d9565b8063b204141114610ad8578063b62496f514610b03578063bbc0c74214610b40578063bff7816914610b6b576103d9565b806395d89b41116101cc57806395d89b4114610a0a5780639a7a23d614610a35578063a457c2d714610a5e578063a9059cbb14610a9b576103d9565b80638da5cb5b14610962578063921369131461098d578063924de9b7146109b857806392aa3773146109e1576103d9565b806349bd5a5e116102ed5780636ddd1713116102805780637571336a1161024f5780637571336a146108cc57806375f0a874146108f55780637bce5a04146109205780638a8c523c1461094b576103d9565b80636ddd17131461082257806370a082311461084d578063715018a61461088a578063751039fc146108a1576103d9565b80635a139dd4116102bc5780635a139dd41461077a57806367243482146107a55780636a486a8e146107ce5780636aebf627146107f9576103d9565b806349bd5a5e146106bc5780634a62bb65146106e75780634f77f6c0146107125780634fbee1931461073d576103d9565b80631f3fed8f116103655780632e6ed7ef116103345780632e6ed7ef14610600578063313ce56714610629578063377ad12714610654578063395093511461067f576103d9565b80631f3fed8f1461054457806323b872dd1461056f57806327c8f835146105ac5780632cefac29146105d7576103d9565b806318160ddd116103a157806318160ddd1461049a57806318a94cf1146104c55780631a8145bb146104f05780631c499ab01461051b576103d9565b80630517d13d146103de57806306fdde0314610407578063095ea7b3146104325780631694505e1461046f576103d9565b366103d957005b600080fd5b3480156103ea57600080fd5b5061040560048036038101906104009190614647565b610f5b565b005b34801561041357600080fd5b5061041c61106a565b604051610429919061470d565b60405180910390f35b34801561043e57600080fd5b506104596004803603810190610454919061478d565b6110fc565b60405161046691906147e8565b60405180910390f35b34801561047b57600080fd5b5061048461111a565b6040516104919190614862565b60405180910390f35b3480156104a657600080fd5b506104af61113e565b6040516104bc919061488c565b60405180910390f35b3480156104d157600080fd5b506104da611148565b6040516104e7919061488c565b60405180910390f35b3480156104fc57600080fd5b5061050561114e565b604051610512919061488c565b60405180910390f35b34801561052757600080fd5b50610542600480360381019061053d9190614647565b611154565b005b34801561055057600080fd5b50610559611263565b604051610566919061488c565b60405180910390f35b34801561057b57600080fd5b50610596600480360381019061059191906148a7565b611269565b6040516105a391906147e8565b60405180910390f35b3480156105b857600080fd5b506105c1611361565b6040516105ce9190614909565b60405180910390f35b3480156105e357600080fd5b506105fe60048036038101906105f991906149b5565b611367565b005b34801561060c57600080fd5b5061062760048036038101906106229190614a15565b611576565b005b34801561063557600080fd5b5061063e611654565b60405161064b9190614a98565b60405180910390f35b34801561066057600080fd5b5061066961165d565b6040516106769190614909565b60405180910390f35b34801561068b57600080fd5b506106a660048036038101906106a1919061478d565b611683565b6040516106b391906147e8565b60405180910390f35b3480156106c857600080fd5b506106d161172f565b6040516106de9190614909565b60405180910390f35b3480156106f357600080fd5b506106fc611753565b60405161070991906147e8565b60405180910390f35b34801561071e57600080fd5b50610727611766565b604051610734919061488c565b60405180910390f35b34801561074957600080fd5b50610764600480360381019061075f9190614ab3565b61176c565b60405161077191906147e8565b60405180910390f35b34801561078657600080fd5b5061078f6117c2565b60405161079c919061488c565b60405180910390f35b3480156107b157600080fd5b506107cc60048036038101906107c79190614b36565b6117c8565b005b3480156107da57600080fd5b506107e36118d0565b6040516107f0919061488c565b60405180910390f35b34801561080557600080fd5b50610820600480360381019061081b9190614ab3565b6118d6565b005b34801561082e57600080fd5b50610837611a12565b60405161084491906147e8565b60405180910390f35b34801561085957600080fd5b50610874600480360381019061086f9190614ab3565b611a25565b604051610881919061488c565b60405180910390f35b34801561089657600080fd5b5061089f611a6d565b005b3480156108ad57600080fd5b506108b6611af5565b6040516108c391906147e8565b60405180910390f35b3480156108d857600080fd5b506108f360048036038101906108ee9190614bb7565b611b95565b005b34801561090157600080fd5b5061090a611c6c565b6040516109179190614909565b60405180910390f35b34801561092c57600080fd5b50610935611c92565b604051610942919061488c565b60405180910390f35b34801561095757600080fd5b50610960611c98565b005b34801561096e57600080fd5b50610977611da3565b6040516109849190614909565b60405180910390f35b34801561099957600080fd5b506109a2611dcd565b6040516109af919061488c565b60405180910390f35b3480156109c457600080fd5b506109df60048036038101906109da9190614bf7565b611dd3565b005b3480156109ed57600080fd5b50610a086004803603810190610a039190614ab3565b611e6c565b005b348015610a1657600080fd5b50610a1f611fa8565b604051610a2c919061470d565b60405180910390f35b348015610a4157600080fd5b50610a5c6004803603810190610a579190614bb7565b61203a565b005b348015610a6a57600080fd5b50610a856004803603810190610a80919061478d565b612153565b604051610a9291906147e8565b60405180910390f35b348015610aa757600080fd5b50610ac26004803603810190610abd919061478d565b61223e565b604051610acf91906147e8565b60405180910390f35b348015610ae457600080fd5b50610aed61225c565b604051610afa919061488c565b60405180910390f35b348015610b0f57600080fd5b50610b2a6004803603810190610b259190614ab3565b612262565b604051610b3791906147e8565b60405180910390f35b348015610b4c57600080fd5b50610b55612282565b604051610b6291906147e8565b60405180910390f35b348015610b7757600080fd5b50610b926004803603810190610b8d9190614ab3565b612295565b005b348015610ba057600080fd5b50610bbb6004803603810190610bb69190614bb7565b6123d1565b005b348015610bc957600080fd5b50610bd26124f6565b604051610bdf9190614909565b60405180910390f35b348015610bf457600080fd5b50610bfd61251c565b604051610c0a919061488c565b60405180910390f35b348015610c1f57600080fd5b50610c3a6004803603810190610c359190614ab3565b612522565b005b348015610c4857600080fd5b50610c5161265e565b604051610c5e91906147e8565b60405180910390f35b348015610c7357600080fd5b50610c8e6004803603810190610c899190614647565b612671565b604051610c9b91906147e8565b60405180910390f35b348015610cb057600080fd5b50610cb96127c6565b604051610cc69190614909565b60405180910390f35b348015610cdb57600080fd5b50610ce46127ec565b604051610cf1919061488c565b60405180910390f35b348015610d0657600080fd5b50610d216004803603810190610d1c9190614c24565b6127f2565b604051610d2e919061488c565b60405180910390f35b348015610d4357600080fd5b50610d5e6004803603810190610d599190614ab3565b612879565b604051610d6b91906147e8565b60405180910390f35b348015610d8057600080fd5b50610d89612899565b604051610d96919061488c565b60405180910390f35b348015610dab57600080fd5b50610dc66004803603810190610dc19190614ab3565b61289f565b604051610dd391906147e8565b60405180910390f35b348015610de857600080fd5b50610e036004803603810190610dfe9190614a15565b6128bf565b005b348015610e1157600080fd5b50610e1a61299d565b604051610e2791906147e8565b60405180910390f35b348015610e3c57600080fd5b50610e45612a3d565b604051610e52919061488c565b60405180910390f35b348015610e6757600080fd5b50610e70612a43565b604051610e7d919061488c565b60405180910390f35b348015610e9257600080fd5b50610ead6004803603810190610ea89190614ab3565b612a49565b005b348015610ebb57600080fd5b50610ec4612b41565b604051610ed1919061488c565b60405180910390f35b348015610ee657600080fd5b50610eef612b47565b604051610efc919061488c565b60405180910390f35b348015610f1157600080fd5b50610f1a612b4d565b604051610f27919061488c565b60405180910390f35b348015610f3c57600080fd5b50610f45612b53565b604051610f529190614909565b60405180910390f35b610f63612b79565b73ffffffffffffffffffffffffffffffffffffffff16610f81611da3565b73ffffffffffffffffffffffffffffffffffffffff1614610fd7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fce90614cb0565b60405180910390fd5b670de0b6b3a76400006103e86001610fed61113e565b610ff79190614cff565b6110019190614d88565b61100b9190614d88565b81101561104d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161104490614e2b565b60405180910390fd5b670de0b6b3a7640000816110619190614cff565b600b8190555050565b60606003805461107990614e7a565b80601f01602080910402602001604051908101604052809291908181526020018280546110a590614e7a565b80156110f25780601f106110c7576101008083540402835291602001916110f2565b820191906000526020600020905b8154815290600101906020018083116110d557829003601f168201915b5050505050905090565b6000611110611109612b79565b8484612b81565b6001905092915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000600254905090565b601b5481565b601e5481565b61115c612b79565b73ffffffffffffffffffffffffffffffffffffffff1661117a611da3565b73ffffffffffffffffffffffffffffffffffffffff16146111d0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111c790614cb0565b60405180910390fd5b670de0b6b3a76400006103e860056111e661113e565b6111f09190614cff565b6111fa9190614d88565b6112049190614d88565b811015611246576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161123d90614f1e565b60405180910390fd5b670de0b6b3a76400008161125a9190614cff565b600d8190555050565b601d5481565b6000611276848484612d4c565b6000600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006112c1612b79565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015611341576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161133890614fb0565b60405180910390fd5b6113558561134d612b79565b858403612b81565b60019150509392505050565b61dead81565b61136f612b79565b73ffffffffffffffffffffffffffffffffffffffff1661138d611da3565b73ffffffffffffffffffffffffffffffffffffffff16146113e3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113da90614cb0565b60405180910390fd5b60005b8383905081101561157057600084848381811061140657611405614fd0565b5b905060200201602081019061141b9190614ab3565b90503073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141580156114a75750600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614155b80156114ff57507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614155b1561155c5782601260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b50808061156890614fff565b9150506113e6565b50505050565b61157e612b79565b73ffffffffffffffffffffffffffffffffffffffff1661159c611da3565b73ffffffffffffffffffffffffffffffffffffffff16146115f2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115e990614cb0565b60405180910390fd5b836014819055508260158190555081601681905550806017819055506017546016546015546014546116249190615048565b61162e9190615048565b6116389190615048565b6013819055506063601354111561164e57600080fd5b50505050565b60006012905090565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000611725611690612b79565b84846001600061169e612b79565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546117209190615048565b612b81565b6001905092915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b600e60009054906101000a900460ff1681565b601c5481565b6000602160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b60175481565b6117d0612b79565b73ffffffffffffffffffffffffffffffffffffffff166117ee611da3565b73ffffffffffffffffffffffffffffffffffffffff1614611844576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161183b90614cb0565b60405180910390fd5b81819050848490501461185657600080fd5b60005b848490508110156118c9576118b661186f612b79565b86868481811061188257611881614fd0565b5b90506020020160208101906118979190614ab3565b8585858181106118aa576118a9614fd0565b5b90506020020135612d4c565b80806118c190614fff565b915050611859565b5050505050565b60185481565b6118de612b79565b73ffffffffffffffffffffffffffffffffffffffff166118fc611da3565b73ffffffffffffffffffffffffffffffffffffffff1614611952576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161194990614cb0565b60405180910390fd5b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167fe1bb4a3e2b2b99353f84d73df9e136cfe17627ed07083a649101dfa6bde8459c60405160405180910390a380600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600e60029054906101000a900460ff1681565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b611a75612b79565b73ffffffffffffffffffffffffffffffffffffffff16611a93611da3565b73ffffffffffffffffffffffffffffffffffffffff1614611ae9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ae090614cb0565b60405180910390fd5b611af36000613ad9565b565b6000611aff612b79565b73ffffffffffffffffffffffffffffffffffffffff16611b1d611da3565b73ffffffffffffffffffffffffffffffffffffffff1614611b73576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b6a90614cb0565b60405180910390fd5b6000600e60006101000a81548160ff0219169083151502179055506001905090565b611b9d612b79565b73ffffffffffffffffffffffffffffffffffffffff16611bbb611da3565b73ffffffffffffffffffffffffffffffffffffffff1614611c11576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c0890614cb0565b60405180910390fd5b80602260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60145481565b611ca0612b79565b73ffffffffffffffffffffffffffffffffffffffff16611cbe611da3565b73ffffffffffffffffffffffffffffffffffffffff1614611d14576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d0b90614cb0565b60405180910390fd5b600e60019054906101000a900460ff1615611d64576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d5b906150ea565b60405180910390fd5b6001600e60016101000a81548160ff021916908315150217905550436011819055506001600e60026101000a81548160ff021916908315150217905550565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60195481565b611ddb612b79565b73ffffffffffffffffffffffffffffffffffffffff16611df9611da3565b73ffffffffffffffffffffffffffffffffffffffff1614611e4f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e4690614cb0565b60405180910390fd5b80600e60026101000a81548160ff02191690831515021790555050565b611e74612b79565b73ffffffffffffffffffffffffffffffffffffffff16611e92611da3565b73ffffffffffffffffffffffffffffffffffffffff1614611ee8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611edf90614cb0565b60405180910390fd5b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f3e0ea4f8339b6050ff814971a9814aa39176c149fcf185975c219f33db2342db60405160405180910390a380600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b606060048054611fb790614e7a565b80601f0160208091040260200160405190810160405280929190818152602001828054611fe390614e7a565b80156120305780601f1061200557610100808354040283529160200191612030565b820191906000526020600020905b81548152906001019060200180831161201357829003601f168201915b5050505050905090565b612042612b79565b73ffffffffffffffffffffffffffffffffffffffff16612060611da3565b73ffffffffffffffffffffffffffffffffffffffff16146120b6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120ad90614cb0565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612145576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161213c9061517c565b60405180910390fd5b61214f8282613b9f565b5050565b60008060016000612162612b79565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508281101561221f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122169061520e565b60405180910390fd5b61223361222a612b79565b85858403612b81565b600191505092915050565b600061225261224b612b79565b8484612d4c565b6001905092915050565b60165481565b60236020528060005260406000206000915054906101000a900460ff1681565b600e60019054906101000a900460ff1681565b61229d612b79565b73ffffffffffffffffffffffffffffffffffffffff166122bb611da3565b73ffffffffffffffffffffffffffffffffffffffff1614612311576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161230890614cb0565b60405180910390fd5b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167fa751787977eeb3902e30e1d19ca00c6ad274a1f622c31a206e32366700b0567460405160405180910390a380600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6123d9612b79565b73ffffffffffffffffffffffffffffffffffffffff166123f7611da3565b73ffffffffffffffffffffffffffffffffffffffff161461244d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161244490614cb0565b60405180910390fd5b80602160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7826040516124ea91906147e8565b60405180910390a25050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600b5481565b61252a612b79565b73ffffffffffffffffffffffffffffffffffffffff16612548611da3565b73ffffffffffffffffffffffffffffffffffffffff161461259e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161259590614cb0565b60405180910390fd5b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167ffaf1b77ed79f6e898c44dd8ab36b330c7b2fd39bcaab05ed6362480df870396560405160405180910390a380600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b601060009054906101000a900460ff1681565b600061267b612b79565b73ffffffffffffffffffffffffffffffffffffffff16612699611da3565b73ffffffffffffffffffffffffffffffffffffffff16146126ef576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126e690614cb0565b60405180910390fd5b620186a060016126fd61113e565b6127079190614cff565b6127119190614d88565b821015612753576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161274a906152a0565b60405180910390fd5b6103e8600561276061113e565b61276a9190614cff565b6127749190614d88565b8211156127b6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127ad90615332565b60405180910390fd5b81600c8190555060019050919050565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60135481565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60226020528060005260406000206000915054906101000a900460ff1681565b600c5481565b60126020528060005260406000206000915054906101000a900460ff1681565b6128c7612b79565b73ffffffffffffffffffffffffffffffffffffffff166128e5611da3565b73ffffffffffffffffffffffffffffffffffffffff161461293b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161293290614cb0565b60405180910390fd5b8360198190555082601a8190555081601b8190555080601c81905550601c54601b54601a5460195461296d9190615048565b6129779190615048565b6129819190615048565b6018819055506063601854111561299757600080fd5b50505050565b60006129a7612b79565b73ffffffffffffffffffffffffffffffffffffffff166129c5611da3565b73ffffffffffffffffffffffffffffffffffffffff1614612a1b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a1290614cb0565b60405180910390fd5b6000601060006101000a81548160ff0219169083151502179055506001905090565b601f5481565b60155481565b612a51612b79565b73ffffffffffffffffffffffffffffffffffffffff16612a6f611da3565b73ffffffffffffffffffffffffffffffffffffffff1614612ac5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612abc90614cb0565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415612b35576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b2c906153c4565b60405180910390fd5b612b3e81613ad9565b50565b601a5481565b600d5481565b60205481565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612bf1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612be890615456565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612c61576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c58906154e8565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051612d3f919061488c565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612dbc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612db39061557a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612e2c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612e239061560c565b60405180910390fd5b601260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615612eb9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612eb090615678565b60405180910390fd5b6000811415612ed357612ece83836000613c40565b613ad4565b600e60009054906101000a900460ff161561359657612ef0611da3565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015612f5e5750612f2e611da3565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015612f975750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015612fd1575061dead73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015612fea5750600660149054906101000a900460ff16155b1561359557600e60019054906101000a900460ff166130e457602160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806130a45750602160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b6130e3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016130da906156e4565b60405180910390fd5b5b601060009054906101000a900460ff16156132ac57613101611da3565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415801561318857507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156131e057507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b156132ab5743600f60003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410613266576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161325d9061579c565b60405180910390fd5b43600f60003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b5b602360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16801561334f5750602260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156133f657600b54811115613399576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016133909061582e565b60405180910390fd5b600d546133a583611a25565b826133b09190615048565b11156133f1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016133e89061589a565b60405180910390fd5b613594565b602360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680156134995750602260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156134e857600b548111156134e3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016134da9061592c565b60405180910390fd5b613593565b602260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661359257600d5461354583611a25565b826135509190615048565b1115613591576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016135889061589a565b60405180910390fd5b5b5b5b5b5b60006135a130611a25565b90506000600c5482101590508080156135c65750600e60029054906101000a900460ff165b80156135df5750600660149054906101000a900460ff16155b80156136355750602360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b801561368b5750602160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156136e15750602160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15613725576001600660146101000a81548160ff021916908315150217905550613709613ec1565b6000600660146101000a81548160ff0219169083151502179055505b6000600660149054906101000a900460ff16159050602160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806137db5750602160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156137e557600090505b60008115613ac457602360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16801561384857506000601854115b156139485761387560646138676018548861428290919063ffffffff16565b61429890919063ffffffff16565b9050601854601a54826138889190614cff565b6138929190614d88565b601e60008282546138a39190615048565b92505081905550601854601b54826138bb9190614cff565b6138c59190614d88565b601f60008282546138d69190615048565b92505081905550601854601954826138ee9190614cff565b6138f89190614d88565b601d60008282546139099190615048565b92505081905550601854601c54826139219190614cff565b61392b9190614d88565b6020600082825461393c9190615048565b92505081905550613aa0565b602360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680156139a357506000601354115b15613a9f576139d060646139c26013548861428290919063ffffffff16565b61429890919063ffffffff16565b9050601354601554826139e39190614cff565b6139ed9190614d88565b601e60008282546139fe9190615048565b9250508190555060135460165482613a169190614cff565b613a209190614d88565b601f6000828254613a319190615048565b9250508190555060135460145482613a499190614cff565b613a539190614d88565b601d6000828254613a649190615048565b9250508190555060135460175482613a7c9190614cff565b613a869190614d88565b60206000828254613a979190615048565b925050819055505b5b6000811115613ab557613ab4873083613c40565b5b8085613ac1919061594c565b94505b613acf878787613c40565b505050505b505050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b80602360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508015158273ffffffffffffffffffffffffffffffffffffffff167fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab60405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415613cb0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613ca79061557a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415613d20576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613d179061560c565b60405180910390fd5b613d2b8383836142ae565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015613db1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613da8906159f2565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254613e449190615048565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051613ea8919061488c565b60405180910390a3613ebb8484846142b3565b50505050565b6000613ecc30611a25565b90506000602054601f54601d54601e54613ee69190615048565b613ef09190615048565b613efa9190615048565b9050600080831480613f0c5750600082145b15613f1957505050614280565b6014600c54613f289190614cff565b831115613f41576014600c54613f3e9190614cff565b92505b6000600283601e5486613f549190614cff565b613f5e9190614d88565b613f689190614d88565b90506000613f7f82866142b890919063ffffffff16565b90506000479050613f8f826142ce565b6000613fa482476142b890919063ffffffff16565b90506000613fcf87613fc1601d548561428290919063ffffffff16565b61429890919063ffffffff16565b90506000613ffa88613fec601f548661428290919063ffffffff16565b61429890919063ffffffff16565b90506000614025896140176020548761428290919063ffffffff16565b61429890919063ffffffff16565b9050600081838587614037919061594c565b614041919061594c565b61404b919061594c565b90506000601e819055506000601d819055506000601f819055506000602081905550600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16836040516140b390615a43565b60006040518083038185875af1925050503d80600081146140f0576040519150601f19603f3d011682016040523d82523d6000602084013e6140f5565b606091505b50508099505060008811801561410b5750600081115b156141585761411a888261450b565b7f17bbfb9a6069321b6ded73bd96327c9e6b7212a5cd51ff219cd61370acafb5618782601e5460405161414f93929190615a58565b60405180910390a15b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168260405161419e90615a43565b60006040518083038185875af1925050503d80600081146141db576040519150601f19603f3d011682016040523d82523d6000602084013e6141e0565b606091505b505080995050600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff164760405161422c90615a43565b60006040518083038185875af1925050503d8060008114614269576040519150601f19603f3d011682016040523d82523d6000602084013e61426e565b606091505b50508099505050505050505050505050505b565b600081836142909190614cff565b905092915050565b600081836142a69190614d88565b905092915050565b505050565b505050565b600081836142c6919061594c565b905092915050565b6000600267ffffffffffffffff8111156142eb576142ea615a8f565b5b6040519080825280602002602001820160405280156143195781602001602082028036833780820191505090505b509050308160008151811061433157614330614fd0565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156143d6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906143fa9190615ad3565b8160018151811061440e5761440d614fd0565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050614473307f000000000000000000000000000000000000000000000000000000000000000084612b81565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b81526004016144d5959493929190615bf9565b600060405180830381600087803b1580156144ef57600080fd5b505af1158015614503573d6000803e3d6000fd5b505050505050565b614536307f000000000000000000000000000000000000000000000000000000000000000084612b81565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663f305d719823085600080600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16426040518863ffffffff1660e01b81526004016145bd96959493929190615c53565b60606040518083038185885af11580156145db573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906146009190615cc9565b5050505050565b600080fd5b600080fd5b6000819050919050565b61462481614611565b811461462f57600080fd5b50565b6000813590506146418161461b565b92915050565b60006020828403121561465d5761465c614607565b5b600061466b84828501614632565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156146ae578082015181840152602081019050614693565b838111156146bd576000848401525b50505050565b6000601f19601f8301169050919050565b60006146df82614674565b6146e9818561467f565b93506146f9818560208601614690565b614702816146c3565b840191505092915050565b6000602082019050818103600083015261472781846146d4565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061475a8261472f565b9050919050565b61476a8161474f565b811461477557600080fd5b50565b60008135905061478781614761565b92915050565b600080604083850312156147a4576147a3614607565b5b60006147b285828601614778565b92505060206147c385828601614632565b9150509250929050565b60008115159050919050565b6147e2816147cd565b82525050565b60006020820190506147fd60008301846147d9565b92915050565b6000819050919050565b600061482861482361481e8461472f565b614803565b61472f565b9050919050565b600061483a8261480d565b9050919050565b600061484c8261482f565b9050919050565b61485c81614841565b82525050565b60006020820190506148776000830184614853565b92915050565b61488681614611565b82525050565b60006020820190506148a1600083018461487d565b92915050565b6000806000606084860312156148c0576148bf614607565b5b60006148ce86828701614778565b93505060206148df86828701614778565b92505060406148f086828701614632565b9150509250925092565b6149038161474f565b82525050565b600060208201905061491e60008301846148fa565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f84011261494957614948614924565b5b8235905067ffffffffffffffff81111561496657614965614929565b5b6020830191508360208202830111156149825761498161492e565b5b9250929050565b614992816147cd565b811461499d57600080fd5b50565b6000813590506149af81614989565b92915050565b6000806000604084860312156149ce576149cd614607565b5b600084013567ffffffffffffffff8111156149ec576149eb61460c565b5b6149f886828701614933565b93509350506020614a0b868287016149a0565b9150509250925092565b60008060008060808587031215614a2f57614a2e614607565b5b6000614a3d87828801614632565b9450506020614a4e87828801614632565b9350506040614a5f87828801614632565b9250506060614a7087828801614632565b91505092959194509250565b600060ff82169050919050565b614a9281614a7c565b82525050565b6000602082019050614aad6000830184614a89565b92915050565b600060208284031215614ac957614ac8614607565b5b6000614ad784828501614778565b91505092915050565b60008083601f840112614af657614af5614924565b5b8235905067ffffffffffffffff811115614b1357614b12614929565b5b602083019150836020820283011115614b2f57614b2e61492e565b5b9250929050565b60008060008060408587031215614b5057614b4f614607565b5b600085013567ffffffffffffffff811115614b6e57614b6d61460c565b5b614b7a87828801614933565b9450945050602085013567ffffffffffffffff811115614b9d57614b9c61460c565b5b614ba987828801614ae0565b925092505092959194509250565b60008060408385031215614bce57614bcd614607565b5b6000614bdc85828601614778565b9250506020614bed858286016149a0565b9150509250929050565b600060208284031215614c0d57614c0c614607565b5b6000614c1b848285016149a0565b91505092915050565b60008060408385031215614c3b57614c3a614607565b5b6000614c4985828601614778565b9250506020614c5a85828601614778565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000614c9a60208361467f565b9150614ca582614c64565b602082019050919050565b60006020820190508181036000830152614cc981614c8d565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000614d0a82614611565b9150614d1583614611565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615614d4e57614d4d614cd0565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000614d9382614611565b9150614d9e83614611565b925082614dae57614dad614d59565b5b828204905092915050565b7f43616e6e6f7420736574206d61785472616e73616374696f6e206c6f7765722060008201527f7468616e20302e31250000000000000000000000000000000000000000000000602082015250565b6000614e1560298361467f565b9150614e2082614db9565b604082019050919050565b60006020820190508181036000830152614e4481614e08565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680614e9257607f821691505b60208210811415614ea657614ea5614e4b565b5b50919050565b7f43616e6e6f7420736574206d617857616c6c6574206c6f776572207468616e2060008201527f302e352500000000000000000000000000000000000000000000000000000000602082015250565b6000614f0860248361467f565b9150614f1382614eac565b604082019050919050565b60006020820190508181036000830152614f3781614efb565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206160008201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b6000614f9a60288361467f565b9150614fa582614f3e565b604082019050919050565b60006020820190508181036000830152614fc981614f8d565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600061500a82614611565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561503d5761503c614cd0565b5b600182019050919050565b600061505382614611565b915061505e83614611565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561509357615092614cd0565b5b828201905092915050565b7f546f6b656e206c61756e63686564000000000000000000000000000000000000600082015250565b60006150d4600e8361467f565b91506150df8261509e565b602082019050919050565b60006020820190508181036000830152615103816150c7565b9050919050565b7f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d2060008201527f6175746f6d617465644d61726b65744d616b6572506169727300000000000000602082015250565b600061516660398361467f565b91506151718261510a565b604082019050919050565b6000602082019050818103600083015261519581615159565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b60006151f860258361467f565b91506152038261519c565b604082019050919050565b60006020820190508181036000830152615227816151eb565b9050919050565b7f5377617020616d6f756e742063616e6e6f74206265206c6f776572207468616e60008201527f20302e3030312520746f74616c20737570706c792e0000000000000000000000602082015250565b600061528a60358361467f565b91506152958261522e565b604082019050919050565b600060208201905081810360008301526152b98161527d565b9050919050565b7f5377617020616d6f756e742063616e6e6f74206265206869676865722074686160008201527f6e20302e352520746f74616c20737570706c792e000000000000000000000000602082015250565b600061531c60348361467f565b9150615327826152c0565b604082019050919050565b6000602082019050818103600083015261534b8161530f565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b60006153ae60268361467f565b91506153b982615352565b604082019050919050565b600060208201905081810360008301526153dd816153a1565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b600061544060248361467f565b915061544b826153e4565b604082019050919050565b6000602082019050818103600083015261546f81615433565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006154d260228361467f565b91506154dd82615476565b604082019050919050565b60006020820190508181036000830152615501816154c5565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b600061556460258361467f565b915061556f82615508565b604082019050919050565b6000602082019050818103600083015261559381615557565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006155f660238361467f565b91506156018261559a565b604082019050919050565b60006020820190508181036000830152615625816155e9565b9050919050565b7f536e6970657220626c6f636b6564000000000000000000000000000000000000600082015250565b6000615662600e8361467f565b915061566d8261562c565b602082019050919050565b6000602082019050818103600083015261569181615655565b9050919050565b7f54726164696e67206973206e6f74206163746976652e00000000000000000000600082015250565b60006156ce60168361467f565b91506156d982615698565b602082019050919050565b600060208201905081810360008301526156fd816156c1565b9050919050565b7f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60008201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b60208201527f20616c6c6f7765642e0000000000000000000000000000000000000000000000604082015250565b600061578660498361467f565b915061579182615704565b606082019050919050565b600060208201905081810360008301526157b581615779565b9050919050565b7f427579207472616e7366657220616d6f756e742065786365656473207468652060008201527f6d61785472616e73616374696f6e2e0000000000000000000000000000000000602082015250565b6000615818602f8361467f565b9150615823826157bc565b604082019050919050565b600060208201905081810360008301526158478161580b565b9050919050565b7f4d61782077616c6c657420657863656564656400000000000000000000000000600082015250565b600061588460138361467f565b915061588f8261584e565b602082019050919050565b600060208201905081810360008301526158b381615877565b9050919050565b7f53656c6c207472616e7366657220616d6f756e7420657863656564732074686560008201527f206d61785472616e73616374696f6e2e00000000000000000000000000000000602082015250565b600061591660308361467f565b9150615921826158ba565b604082019050919050565b6000602082019050818103600083015261594581615909565b9050919050565b600061595782614611565b915061596283614611565b92508282101561597557615974614cd0565b5b828203905092915050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b60006159dc60268361467f565b91506159e782615980565b604082019050919050565b60006020820190508181036000830152615a0b816159cf565b9050919050565b600081905092915050565b50565b6000615a2d600083615a12565b9150615a3882615a1d565b600082019050919050565b6000615a4e82615a20565b9150819050919050565b6000606082019050615a6d600083018661487d565b615a7a602083018561487d565b615a87604083018461487d565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600081519050615acd81614761565b92915050565b600060208284031215615ae957615ae8614607565b5b6000615af784828501615abe565b91505092915050565b6000819050919050565b6000615b25615b20615b1b84615b00565b614803565b614611565b9050919050565b615b3581615b0a565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b615b708161474f565b82525050565b6000615b828383615b67565b60208301905092915050565b6000602082019050919050565b6000615ba682615b3b565b615bb08185615b46565b9350615bbb83615b57565b8060005b83811015615bec578151615bd38882615b76565b9750615bde83615b8e565b925050600181019050615bbf565b5085935050505092915050565b600060a082019050615c0e600083018861487d565b615c1b6020830187615b2c565b8181036040830152615c2d8186615b9b565b9050615c3c60608301856148fa565b615c49608083018461487d565b9695505050505050565b600060c082019050615c6860008301896148fa565b615c75602083018861487d565b615c826040830187615b2c565b615c8f6060830186615b2c565b615c9c60808301856148fa565b615ca960a083018461487d565b979650505050505050565b600081519050615cc38161461b565b92915050565b600080600060608486031215615ce257615ce1614607565b5b6000615cf086828701615cb4565b9350506020615d0186828701615cb4565b9250506040615d1286828701615cb4565b915050925092509256fea26469706673582212200de6dbe20fe37fbbb49c0081dc3ea1495a55e6dcd528121f553baf6e7cf904f564736f6c634300080a0033