60c0604052736bded42c6da8fbf0d2ba55b2fa120c5e0c8d7891600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600e60006101000a81548160ff0219169083151502179055506000600e60016101000a81548160ff0219169083151502179055506000600e60026101000a81548160ff0219169083151502179055506001601060006101000a81548160ff021916908315150217905550348015620000d257600080fd5b506040518060400160405280600c81526020017f4361706f206f6e204261736500000000000000000000000000000000000000008152506040518060400160405280600481526020017f4341504f0000000000000000000000000000000000000000000000000000000081525081600390805190602001906200015792919062000bcd565b5080600490805190602001906200017092919062000bcd565b50505062000193620001876200068d60201b60201c565b6200069560201b60201c565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050620001cd8160016200075b60201b60201c565b8073ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff16815250508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200024d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000273919062000ce7565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620002db573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000301919062000ce7565b6040518363ffffffff1660e01b81526004016200032092919062000d2a565b6020604051808303816000875af115801562000340573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000366919062000ce7565b73ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff1681525050620003ae60a05160016200075b60201b60201c565b620003c360a05160016200084560201b60201c565b6000601e9050600080600080601e90506000806000806a52b7d2dcc80cd2e400000090506a01a784379d99db42000000600b819055506a01a784379d99db42000000600d819055506127106002826200041d919062000d90565b62000429919062000e20565b600c819055508860148190555087601581905550866016819055508560178190555060175460165460155460145462000463919062000e58565b6200046f919062000e58565b6200047b919062000e58565b6013819055508460198190555083601a8190555082601b8190555081601c81905550601c54601b54601a54601954620004b5919062000e58565b620004c1919062000e58565b620004cd919062000e58565b60188190555033600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555033600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555033600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555033600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620005f9620005eb620008e660201b60201c565b60016200091060201b60201c565b6200060c3060016200091060201b60201c565b6200062161dead60016200091060201b60201c565b6200064362000635620008e660201b60201c565b60016200075b60201b60201c565b620006563060016200075b60201b60201c565b6200066b61dead60016200075b60201b60201c565b6200067d338262000a4a60201b60201c565b5050505050505050505062001077565b600033905090565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6200076b6200068d60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1662000791620008e660201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1614620007ea576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620007e19062000f16565b60405180910390fd5b80602260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b80602360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508015158273ffffffffffffffffffffffffffffffffffffffff167fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab60405160405180910390a35050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b620009206200068d60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1662000946620008e660201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16146200099f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620009969062000f16565b60405180910390fd5b80602160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df78260405162000a3e919062000f55565b60405180910390a25050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141562000abd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000ab49062000fc2565b60405180910390fd5b62000ad16000838362000bc360201b60201c565b806002600082825462000ae5919062000e58565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825462000b3c919062000e58565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405162000ba3919062000ff5565b60405180910390a362000bbf6000838362000bc860201b60201c565b5050565b505050565b505050565b82805462000bdb9062001041565b90600052602060002090601f01602090048101928262000bff576000855562000c4b565b82601f1062000c1a57805160ff191683800117855562000c4b565b8280016001018555821562000c4b579182015b8281111562000c4a57825182559160200191906001019062000c2d565b5b50905062000c5a919062000c5e565b5090565b5b8082111562000c7957600081600090555060010162000c5f565b5090565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000caf8262000c82565b9050919050565b62000cc18162000ca2565b811462000ccd57600080fd5b50565b60008151905062000ce18162000cb6565b92915050565b60006020828403121562000d005762000cff62000c7d565b5b600062000d108482850162000cd0565b91505092915050565b62000d248162000ca2565b82525050565b600060408201905062000d41600083018562000d19565b62000d50602083018462000d19565b9392505050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600062000d9d8262000d57565b915062000daa8362000d57565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161562000de65762000de562000d61565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600062000e2d8262000d57565b915062000e3a8362000d57565b92508262000e4d5762000e4c62000df1565b5b828204905092915050565b600062000e658262000d57565b915062000e728362000d57565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111562000eaa5762000ea962000d61565b5b828201905092915050565b600082825260208201905092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600062000efe60208362000eb5565b915062000f0b8262000ec6565b602082019050919050565b6000602082019050818103600083015262000f318162000eef565b9050919050565b60008115159050919050565b62000f4f8162000f38565b82525050565b600060208201905062000f6c600083018462000f44565b92915050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b600062000faa601f8362000eb5565b915062000fb78262000f72565b602082019050919050565b6000602082019050818103600083015262000fdd8162000f9b565b9050919050565b62000fef8162000d57565b82525050565b60006020820190506200100c600083018462000fe4565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200105a57607f821691505b6020821081141562001071576200107062001012565b5b50919050565b60805160a051615cf7620010dc600039600081816114b0015281816117310152818161205d015261313601526000818161111c015281816130de01528181614312015281816143f30152818161441a015281816144b601526144dd0152615cf76000f3fe6080604052600436106103d25760003560e01c80638da5cb5b116101fd578063c876d0b911610118578063e7ad9fcd116100ab578063f2fde38b1161007a578063f2fde38b14610e86578063f637434214610eaf578063f8b45b0514610eda578063fb002c9714610f05578063fd72e22a14610f30576103d9565b8063e7ad9fcd14610ddc578063e884f26014610e05578063ef8700e514610e30578063f11a24d314610e5b576103d9565b8063dd62ed3e116100e7578063dd62ed3e14610cfa578063e1bc339414610d37578063e2f4560514610d74578063e596219514610d9f576103d9565b8063c876d0b914610c3c578063d257b34f14610c67578063d469801614610ca4578063d85ba06314610ccf576103d9565b8063b204141111610190578063c02466681161015f578063c024666814610b94578063c04a541414610bbd578063c3f70b5214610be8578063c79c04fd14610c13576103d9565b8063b204141114610ad8578063b62496f514610b03578063bbc0c74214610b40578063bff7816914610b6b576103d9565b806395d89b41116101cc57806395d89b4114610a0a5780639a7a23d614610a35578063a457c2d714610a5e578063a9059cbb14610a9b576103d9565b80638da5cb5b14610962578063921369131461098d578063924de9b7146109b857806392aa3773146109e1576103d9565b806349bd5a5e116102ed5780636ddd1713116102805780637571336a1161024f5780637571336a146108cc57806375f0a874146108f55780637bce5a04146109205780638a8c523c1461094b576103d9565b80636ddd17131461082257806370a082311461084d578063715018a61461088a578063751039fc146108a1576103d9565b80635a139dd4116102bc5780635a139dd41461077a57806367243482146107a55780636a486a8e146107ce5780636aebf627146107f9576103d9565b806349bd5a5e146106bc5780634a62bb65146106e75780634f77f6c0146107125780634fbee1931461073d576103d9565b80631f3fed8f116103655780632e6ed7ef116103345780632e6ed7ef14610600578063313ce56714610629578063377ad12714610654578063395093511461067f576103d9565b80631f3fed8f1461054457806323b872dd1461056f57806327c8f835146105ac5780632cefac29146105d7576103d9565b806318160ddd116103a157806318160ddd1461049a57806318a94cf1146104c55780631a8145bb146104f05780631c499ab01461051b576103d9565b80630517d13d146103de57806306fdde0314610407578063095ea7b3146104325780631694505e1461046f576103d9565b366103d957005b600080fd5b3480156103ea57600080fd5b50610405600480360381019061040091906145ec565b610f5b565b005b34801561041357600080fd5b5061041c61106a565b60405161042991906146b2565b60405180910390f35b34801561043e57600080fd5b5061045960048036038101906104549190614732565b6110fc565b604051610466919061478d565b60405180910390f35b34801561047b57600080fd5b5061048461111a565b6040516104919190614807565b60405180910390f35b3480156104a657600080fd5b506104af61113e565b6040516104bc9190614831565b60405180910390f35b3480156104d157600080fd5b506104da611148565b6040516104e79190614831565b60405180910390f35b3480156104fc57600080fd5b5061050561114e565b6040516105129190614831565b60405180910390f35b34801561052757600080fd5b50610542600480360381019061053d91906145ec565b611154565b005b34801561055057600080fd5b50610559611263565b6040516105669190614831565b60405180910390f35b34801561057b57600080fd5b506105966004803603810190610591919061484c565b611269565b6040516105a3919061478d565b60405180910390f35b3480156105b857600080fd5b506105c1611361565b6040516105ce91906148ae565b60405180910390f35b3480156105e357600080fd5b506105fe60048036038101906105f9919061495a565b611367565b005b34801561060c57600080fd5b50610627600480360381019061062291906149ba565b611576565b005b34801561063557600080fd5b5061063e611654565b60405161064b9190614a3d565b60405180910390f35b34801561066057600080fd5b5061066961165d565b60405161067691906148ae565b60405180910390f35b34801561068b57600080fd5b506106a660048036038101906106a19190614732565b611683565b6040516106b3919061478d565b60405180910390f35b3480156106c857600080fd5b506106d161172f565b6040516106de91906148ae565b60405180910390f35b3480156106f357600080fd5b506106fc611753565b604051610709919061478d565b60405180910390f35b34801561071e57600080fd5b50610727611766565b6040516107349190614831565b60405180910390f35b34801561074957600080fd5b50610764600480360381019061075f9190614a58565b61176c565b604051610771919061478d565b60405180910390f35b34801561078657600080fd5b5061078f6117c2565b60405161079c9190614831565b60405180910390f35b3480156107b157600080fd5b506107cc60048036038101906107c79190614adb565b6117c8565b005b3480156107da57600080fd5b506107e3611875565b6040516107f09190614831565b60405180910390f35b34801561080557600080fd5b50610820600480360381019061081b9190614a58565b61187b565b005b34801561082e57600080fd5b506108376119b7565b604051610844919061478d565b60405180910390f35b34801561085957600080fd5b50610874600480360381019061086f9190614a58565b6119ca565b6040516108819190614831565b60405180910390f35b34801561089657600080fd5b5061089f611a12565b005b3480156108ad57600080fd5b506108b6611a9a565b6040516108c3919061478d565b60405180910390f35b3480156108d857600080fd5b506108f360048036038101906108ee9190614b5c565b611b3a565b005b34801561090157600080fd5b5061090a611c11565b60405161091791906148ae565b60405180910390f35b34801561092c57600080fd5b50610935611c37565b6040516109429190614831565b60405180910390f35b34801561095757600080fd5b50610960611c3d565b005b34801561096e57600080fd5b50610977611d48565b60405161098491906148ae565b60405180910390f35b34801561099957600080fd5b506109a2611d72565b6040516109af9190614831565b60405180910390f35b3480156109c457600080fd5b506109df60048036038101906109da9190614b9c565b611d78565b005b3480156109ed57600080fd5b50610a086004803603810190610a039190614a58565b611e11565b005b348015610a1657600080fd5b50610a1f611f4d565b604051610a2c91906146b2565b60405180910390f35b348015610a4157600080fd5b50610a5c6004803603810190610a579190614b5c565b611fdf565b005b348015610a6a57600080fd5b50610a856004803603810190610a809190614732565b6120f8565b604051610a92919061478d565b60405180910390f35b348015610aa757600080fd5b50610ac26004803603810190610abd9190614732565b6121e3565b604051610acf919061478d565b60405180910390f35b348015610ae457600080fd5b50610aed612201565b604051610afa9190614831565b60405180910390f35b348015610b0f57600080fd5b50610b2a6004803603810190610b259190614a58565b612207565b604051610b37919061478d565b60405180910390f35b348015610b4c57600080fd5b50610b55612227565b604051610b62919061478d565b60405180910390f35b348015610b7757600080fd5b50610b926004803603810190610b8d9190614a58565b61223a565b005b348015610ba057600080fd5b50610bbb6004803603810190610bb69190614b5c565b612376565b005b348015610bc957600080fd5b50610bd261249b565b604051610bdf91906148ae565b60405180910390f35b348015610bf457600080fd5b50610bfd6124c1565b604051610c0a9190614831565b60405180910390f35b348015610c1f57600080fd5b50610c3a6004803603810190610c359190614a58565b6124c7565b005b348015610c4857600080fd5b50610c51612603565b604051610c5e919061478d565b60405180910390f35b348015610c7357600080fd5b50610c8e6004803603810190610c8991906145ec565b612616565b604051610c9b919061478d565b60405180910390f35b348015610cb057600080fd5b50610cb961276b565b604051610cc691906148ae565b60405180910390f35b348015610cdb57600080fd5b50610ce4612791565b604051610cf19190614831565b60405180910390f35b348015610d0657600080fd5b50610d216004803603810190610d1c9190614bc9565b612797565b604051610d2e9190614831565b60405180910390f35b348015610d4357600080fd5b50610d5e6004803603810190610d599190614a58565b61281e565b604051610d6b919061478d565b60405180910390f35b348015610d8057600080fd5b50610d8961283e565b604051610d969190614831565b60405180910390f35b348015610dab57600080fd5b50610dc66004803603810190610dc19190614a58565b612844565b604051610dd3919061478d565b60405180910390f35b348015610de857600080fd5b50610e036004803603810190610dfe91906149ba565b612864565b005b348015610e1157600080fd5b50610e1a612942565b604051610e27919061478d565b60405180910390f35b348015610e3c57600080fd5b50610e456129e2565b604051610e529190614831565b60405180910390f35b348015610e6757600080fd5b50610e706129e8565b604051610e7d9190614831565b60405180910390f35b348015610e9257600080fd5b50610ead6004803603810190610ea89190614a58565b6129ee565b005b348015610ebb57600080fd5b50610ec4612ae6565b604051610ed19190614831565b60405180910390f35b348015610ee657600080fd5b50610eef612aec565b604051610efc9190614831565b60405180910390f35b348015610f1157600080fd5b50610f1a612af2565b604051610f279190614831565b60405180910390f35b348015610f3c57600080fd5b50610f45612af8565b604051610f5291906148ae565b60405180910390f35b610f63612b1e565b73ffffffffffffffffffffffffffffffffffffffff16610f81611d48565b73ffffffffffffffffffffffffffffffffffffffff1614610fd7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fce90614c55565b60405180910390fd5b670de0b6b3a76400006103e86001610fed61113e565b610ff79190614ca4565b6110019190614d2d565b61100b9190614d2d565b81101561104d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161104490614dd0565b60405180910390fd5b670de0b6b3a7640000816110619190614ca4565b600b8190555050565b60606003805461107990614e1f565b80601f01602080910402602001604051908101604052809291908181526020018280546110a590614e1f565b80156110f25780601f106110c7576101008083540402835291602001916110f2565b820191906000526020600020905b8154815290600101906020018083116110d557829003601f168201915b5050505050905090565b6000611110611109612b1e565b8484612b26565b6001905092915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000600254905090565b601b5481565b601e5481565b61115c612b1e565b73ffffffffffffffffffffffffffffffffffffffff1661117a611d48565b73ffffffffffffffffffffffffffffffffffffffff16146111d0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111c790614c55565b60405180910390fd5b670de0b6b3a76400006103e860056111e661113e565b6111f09190614ca4565b6111fa9190614d2d565b6112049190614d2d565b811015611246576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161123d90614ec3565b60405180910390fd5b670de0b6b3a76400008161125a9190614ca4565b600d8190555050565b601d5481565b6000611276848484612cf1565b6000600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006112c1612b1e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015611341576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161133890614f55565b60405180910390fd5b6113558561134d612b1e565b858403612b26565b60019150509392505050565b61dead81565b61136f612b1e565b73ffffffffffffffffffffffffffffffffffffffff1661138d611d48565b73ffffffffffffffffffffffffffffffffffffffff16146113e3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113da90614c55565b60405180910390fd5b60005b8383905081101561157057600084848381811061140657611405614f75565b5b905060200201602081019061141b9190614a58565b90503073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141580156114a75750600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614155b80156114ff57507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614155b1561155c5782601260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b50808061156890614fa4565b9150506113e6565b50505050565b61157e612b1e565b73ffffffffffffffffffffffffffffffffffffffff1661159c611d48565b73ffffffffffffffffffffffffffffffffffffffff16146115f2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115e990614c55565b60405180910390fd5b836014819055508260158190555081601681905550806017819055506017546016546015546014546116249190614fed565b61162e9190614fed565b6116389190614fed565b6013819055506063601354111561164e57600080fd5b50505050565b60006012905090565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000611725611690612b1e565b84846001600061169e612b1e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546117209190614fed565b612b26565b6001905092915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b600e60009054906101000a900460ff1681565b601c5481565b6000602160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b60175481565b6000848490501180156117e057508383905082829050145b6117e957600080fd5b600033905060005b8585905081101561186d5761185a8287878481811061181357611812614f75565b5b90506020020160208101906118289190614a58565b670de0b6b3a764000087878681811061184457611843614f75565b5b905060200201356118559190614ca4565b612cf1565b808061186590614fa4565b9150506117f1565b505050505050565b60185481565b611883612b1e565b73ffffffffffffffffffffffffffffffffffffffff166118a1611d48565b73ffffffffffffffffffffffffffffffffffffffff16146118f7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118ee90614c55565b60405180910390fd5b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167fe1bb4a3e2b2b99353f84d73df9e136cfe17627ed07083a649101dfa6bde8459c60405160405180910390a380600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600e60029054906101000a900460ff1681565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b611a1a612b1e565b73ffffffffffffffffffffffffffffffffffffffff16611a38611d48565b73ffffffffffffffffffffffffffffffffffffffff1614611a8e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a8590614c55565b60405180910390fd5b611a986000613a7e565b565b6000611aa4612b1e565b73ffffffffffffffffffffffffffffffffffffffff16611ac2611d48565b73ffffffffffffffffffffffffffffffffffffffff1614611b18576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b0f90614c55565b60405180910390fd5b6000600e60006101000a81548160ff0219169083151502179055506001905090565b611b42612b1e565b73ffffffffffffffffffffffffffffffffffffffff16611b60611d48565b73ffffffffffffffffffffffffffffffffffffffff1614611bb6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bad90614c55565b60405180910390fd5b80602260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60145481565b611c45612b1e565b73ffffffffffffffffffffffffffffffffffffffff16611c63611d48565b73ffffffffffffffffffffffffffffffffffffffff1614611cb9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cb090614c55565b60405180910390fd5b600e60019054906101000a900460ff1615611d09576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d009061508f565b60405180910390fd5b6001600e60016101000a81548160ff021916908315150217905550436011819055506001600e60026101000a81548160ff021916908315150217905550565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60195481565b611d80612b1e565b73ffffffffffffffffffffffffffffffffffffffff16611d9e611d48565b73ffffffffffffffffffffffffffffffffffffffff1614611df4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611deb90614c55565b60405180910390fd5b80600e60026101000a81548160ff02191690831515021790555050565b611e19612b1e565b73ffffffffffffffffffffffffffffffffffffffff16611e37611d48565b73ffffffffffffffffffffffffffffffffffffffff1614611e8d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e8490614c55565b60405180910390fd5b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f3e0ea4f8339b6050ff814971a9814aa39176c149fcf185975c219f33db2342db60405160405180910390a380600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b606060048054611f5c90614e1f565b80601f0160208091040260200160405190810160405280929190818152602001828054611f8890614e1f565b8015611fd55780601f10611faa57610100808354040283529160200191611fd5565b820191906000526020600020905b815481529060010190602001808311611fb857829003601f168201915b5050505050905090565b611fe7612b1e565b73ffffffffffffffffffffffffffffffffffffffff16612005611d48565b73ffffffffffffffffffffffffffffffffffffffff161461205b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161205290614c55565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156120ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120e190615121565b60405180910390fd5b6120f48282613b44565b5050565b60008060016000612107612b1e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050828110156121c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121bb906151b3565b60405180910390fd5b6121d86121cf612b1e565b85858403612b26565b600191505092915050565b60006121f76121f0612b1e565b8484612cf1565b6001905092915050565b60165481565b60236020528060005260406000206000915054906101000a900460ff1681565b600e60019054906101000a900460ff1681565b612242612b1e565b73ffffffffffffffffffffffffffffffffffffffff16612260611d48565b73ffffffffffffffffffffffffffffffffffffffff16146122b6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122ad90614c55565b60405180910390fd5b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167fa751787977eeb3902e30e1d19ca00c6ad274a1f622c31a206e32366700b0567460405160405180910390a380600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b61237e612b1e565b73ffffffffffffffffffffffffffffffffffffffff1661239c611d48565b73ffffffffffffffffffffffffffffffffffffffff16146123f2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123e990614c55565b60405180910390fd5b80602160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df78260405161248f919061478d565b60405180910390a25050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600b5481565b6124cf612b1e565b73ffffffffffffffffffffffffffffffffffffffff166124ed611d48565b73ffffffffffffffffffffffffffffffffffffffff1614612543576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161253a90614c55565b60405180910390fd5b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167ffaf1b77ed79f6e898c44dd8ab36b330c7b2fd39bcaab05ed6362480df870396560405160405180910390a380600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b601060009054906101000a900460ff1681565b6000612620612b1e565b73ffffffffffffffffffffffffffffffffffffffff1661263e611d48565b73ffffffffffffffffffffffffffffffffffffffff1614612694576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161268b90614c55565b60405180910390fd5b620186a060016126a261113e565b6126ac9190614ca4565b6126b69190614d2d565b8210156126f8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126ef90615245565b60405180910390fd5b6103e8600561270561113e565b61270f9190614ca4565b6127199190614d2d565b82111561275b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612752906152d7565b60405180910390fd5b81600c8190555060019050919050565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60135481565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60226020528060005260406000206000915054906101000a900460ff1681565b600c5481565b60126020528060005260406000206000915054906101000a900460ff1681565b61286c612b1e565b73ffffffffffffffffffffffffffffffffffffffff1661288a611d48565b73ffffffffffffffffffffffffffffffffffffffff16146128e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128d790614c55565b60405180910390fd5b8360198190555082601a8190555081601b8190555080601c81905550601c54601b54601a546019546129129190614fed565b61291c9190614fed565b6129269190614fed565b6018819055506063601854111561293c57600080fd5b50505050565b600061294c612b1e565b73ffffffffffffffffffffffffffffffffffffffff1661296a611d48565b73ffffffffffffffffffffffffffffffffffffffff16146129c0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129b790614c55565b60405180910390fd5b6000601060006101000a81548160ff0219169083151502179055506001905090565b601f5481565b60155481565b6129f6612b1e565b73ffffffffffffffffffffffffffffffffffffffff16612a14611d48565b73ffffffffffffffffffffffffffffffffffffffff1614612a6a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a6190614c55565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415612ada576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612ad190615369565b60405180910390fd5b612ae381613a7e565b50565b601a5481565b600d5481565b60205481565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612b96576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b8d906153fb565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612c06576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612bfd9061548d565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051612ce49190614831565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612d61576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d589061551f565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612dd1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612dc8906155b1565b60405180910390fd5b601260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615612e5e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612e559061561d565b60405180910390fd5b6000811415612e7857612e7383836000613be5565b613a79565b600e60009054906101000a900460ff161561353b57612e95611d48565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015612f035750612ed3611d48565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015612f3c5750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015612f76575061dead73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015612f8f5750600660149054906101000a900460ff16155b1561353a57600e60019054906101000a900460ff1661308957602160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806130495750602160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b613088576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161307f90615689565b60405180910390fd5b5b601060009054906101000a900460ff1615613251576130a6611d48565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415801561312d57507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b801561318557507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b156132505743600f60003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541061320b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161320290615741565b60405180910390fd5b43600f60003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b5b602360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680156132f45750602260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561339b57600b5481111561333e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613335906157d3565b60405180910390fd5b600d5461334a836119ca565b826133559190614fed565b1115613396576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161338d9061583f565b60405180910390fd5b613539565b602360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16801561343e5750602260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561348d57600b54811115613488576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161347f906158d1565b60405180910390fd5b613538565b602260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661353757600d546134ea836119ca565b826134f59190614fed565b1115613536576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161352d9061583f565b60405180910390fd5b5b5b5b5b5b6000613546306119ca565b90506000600c54821015905080801561356b5750600e60029054906101000a900460ff165b80156135845750600660149054906101000a900460ff16155b80156135da5750602360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156136305750602160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156136865750602160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156136ca576001600660146101000a81548160ff0219169083151502179055506136ae613e66565b6000600660146101000a81548160ff0219169083151502179055505b6000600660149054906101000a900460ff16159050602160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806137805750602160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b1561378a57600090505b60008115613a6957602360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680156137ed57506000601854115b156138ed5761381a606461380c6018548861422790919063ffffffff16565b61423d90919063ffffffff16565b9050601854601a548261382d9190614ca4565b6138379190614d2d565b601e60008282546138489190614fed565b92505081905550601854601b54826138609190614ca4565b61386a9190614d2d565b601f600082825461387b9190614fed565b92505081905550601854601954826138939190614ca4565b61389d9190614d2d565b601d60008282546138ae9190614fed565b92505081905550601854601c54826138c69190614ca4565b6138d09190614d2d565b602060008282546138e19190614fed565b92505081905550613a45565b602360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16801561394857506000601354115b15613a445761397560646139676013548861422790919063ffffffff16565b61423d90919063ffffffff16565b9050601354601554826139889190614ca4565b6139929190614d2d565b601e60008282546139a39190614fed565b92505081905550601354601654826139bb9190614ca4565b6139c59190614d2d565b601f60008282546139d69190614fed565b92505081905550601354601454826139ee9190614ca4565b6139f89190614d2d565b601d6000828254613a099190614fed565b9250508190555060135460175482613a219190614ca4565b613a2b9190614d2d565b60206000828254613a3c9190614fed565b925050819055505b5b6000811115613a5a57613a59873083613be5565b5b8085613a6691906158f1565b94505b613a74878787613be5565b505050505b505050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b80602360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508015158273ffffffffffffffffffffffffffffffffffffffff167fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab60405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415613c55576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613c4c9061551f565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415613cc5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613cbc906155b1565b60405180910390fd5b613cd0838383614253565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015613d56576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613d4d90615997565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254613de99190614fed565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051613e4d9190614831565b60405180910390a3613e60848484614258565b50505050565b6000613e71306119ca565b90506000602054601f54601d54601e54613e8b9190614fed565b613e959190614fed565b613e9f9190614fed565b9050600080831480613eb15750600082145b15613ebe57505050614225565b6014600c54613ecd9190614ca4565b831115613ee6576014600c54613ee39190614ca4565b92505b6000600283601e5486613ef99190614ca4565b613f039190614d2d565b613f0d9190614d2d565b90506000613f24828661425d90919063ffffffff16565b90506000479050613f3482614273565b6000613f49824761425d90919063ffffffff16565b90506000613f7487613f66601d548561422790919063ffffffff16565b61423d90919063ffffffff16565b90506000613f9f88613f91601f548661422790919063ffffffff16565b61423d90919063ffffffff16565b90506000613fca89613fbc6020548761422790919063ffffffff16565b61423d90919063ffffffff16565b9050600081838587613fdc91906158f1565b613fe691906158f1565b613ff091906158f1565b90506000601e819055506000601d819055506000601f819055506000602081905550600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1683604051614058906159e8565b60006040518083038185875af1925050503d8060008114614095576040519150601f19603f3d011682016040523d82523d6000602084013e61409a565b606091505b5050809950506000881180156140b05750600081115b156140fd576140bf88826144b0565b7f17bbfb9a6069321b6ded73bd96327c9e6b7212a5cd51ff219cd61370acafb5618782601e546040516140f4939291906159fd565b60405180910390a15b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1682604051614143906159e8565b60006040518083038185875af1925050503d8060008114614180576040519150601f19603f3d011682016040523d82523d6000602084013e614185565b606091505b505080995050600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16476040516141d1906159e8565b60006040518083038185875af1925050503d806000811461420e576040519150601f19603f3d011682016040523d82523d6000602084013e614213565b606091505b50508099505050505050505050505050505b565b600081836142359190614ca4565b905092915050565b6000818361424b9190614d2d565b905092915050565b505050565b505050565b6000818361426b91906158f1565b905092915050565b6000600267ffffffffffffffff8111156142905761428f615a34565b5b6040519080825280602002602001820160405280156142be5781602001602082028036833780820191505090505b50905030816000815181106142d6576142d5614f75565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561437b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061439f9190615a78565b816001815181106143b3576143b2614f75565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050614418307f000000000000000000000000000000000000000000000000000000000000000084612b26565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b815260040161447a959493929190615b9e565b600060405180830381600087803b15801561449457600080fd5b505af11580156144a8573d6000803e3d6000fd5b505050505050565b6144db307f000000000000000000000000000000000000000000000000000000000000000084612b26565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663f305d719823085600080600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16426040518863ffffffff1660e01b815260040161456296959493929190615bf8565b60606040518083038185885af1158015614580573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906145a59190615c6e565b5050505050565b600080fd5b600080fd5b6000819050919050565b6145c9816145b6565b81146145d457600080fd5b50565b6000813590506145e6816145c0565b92915050565b600060208284031215614602576146016145ac565b5b6000614610848285016145d7565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015614653578082015181840152602081019050614638565b83811115614662576000848401525b50505050565b6000601f19601f8301169050919050565b600061468482614619565b61468e8185614624565b935061469e818560208601614635565b6146a781614668565b840191505092915050565b600060208201905081810360008301526146cc8184614679565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006146ff826146d4565b9050919050565b61470f816146f4565b811461471a57600080fd5b50565b60008135905061472c81614706565b92915050565b60008060408385031215614749576147486145ac565b5b60006147578582860161471d565b9250506020614768858286016145d7565b9150509250929050565b60008115159050919050565b61478781614772565b82525050565b60006020820190506147a2600083018461477e565b92915050565b6000819050919050565b60006147cd6147c86147c3846146d4565b6147a8565b6146d4565b9050919050565b60006147df826147b2565b9050919050565b60006147f1826147d4565b9050919050565b614801816147e6565b82525050565b600060208201905061481c60008301846147f8565b92915050565b61482b816145b6565b82525050565b60006020820190506148466000830184614822565b92915050565b600080600060608486031215614865576148646145ac565b5b60006148738682870161471d565b93505060206148848682870161471d565b9250506040614895868287016145d7565b9150509250925092565b6148a8816146f4565b82525050565b60006020820190506148c3600083018461489f565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f8401126148ee576148ed6148c9565b5b8235905067ffffffffffffffff81111561490b5761490a6148ce565b5b602083019150836020820283011115614927576149266148d3565b5b9250929050565b61493781614772565b811461494257600080fd5b50565b6000813590506149548161492e565b92915050565b600080600060408486031215614973576149726145ac565b5b600084013567ffffffffffffffff811115614991576149906145b1565b5b61499d868287016148d8565b935093505060206149b086828701614945565b9150509250925092565b600080600080608085870312156149d4576149d36145ac565b5b60006149e2878288016145d7565b94505060206149f3878288016145d7565b9350506040614a04878288016145d7565b9250506060614a15878288016145d7565b91505092959194509250565b600060ff82169050919050565b614a3781614a21565b82525050565b6000602082019050614a526000830184614a2e565b92915050565b600060208284031215614a6e57614a6d6145ac565b5b6000614a7c8482850161471d565b91505092915050565b60008083601f840112614a9b57614a9a6148c9565b5b8235905067ffffffffffffffff811115614ab857614ab76148ce565b5b602083019150836020820283011115614ad457614ad36148d3565b5b9250929050565b60008060008060408587031215614af557614af46145ac565b5b600085013567ffffffffffffffff811115614b1357614b126145b1565b5b614b1f878288016148d8565b9450945050602085013567ffffffffffffffff811115614b4257614b416145b1565b5b614b4e87828801614a85565b925092505092959194509250565b60008060408385031215614b7357614b726145ac565b5b6000614b818582860161471d565b9250506020614b9285828601614945565b9150509250929050565b600060208284031215614bb257614bb16145ac565b5b6000614bc084828501614945565b91505092915050565b60008060408385031215614be057614bdf6145ac565b5b6000614bee8582860161471d565b9250506020614bff8582860161471d565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000614c3f602083614624565b9150614c4a82614c09565b602082019050919050565b60006020820190508181036000830152614c6e81614c32565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000614caf826145b6565b9150614cba836145b6565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615614cf357614cf2614c75565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000614d38826145b6565b9150614d43836145b6565b925082614d5357614d52614cfe565b5b828204905092915050565b7f43616e6e6f7420736574206d61785472616e73616374696f6e206c6f7765722060008201527f7468616e20302e31250000000000000000000000000000000000000000000000602082015250565b6000614dba602983614624565b9150614dc582614d5e565b604082019050919050565b60006020820190508181036000830152614de981614dad565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680614e3757607f821691505b60208210811415614e4b57614e4a614df0565b5b50919050565b7f43616e6e6f7420736574206d617857616c6c6574206c6f776572207468616e2060008201527f302e352500000000000000000000000000000000000000000000000000000000602082015250565b6000614ead602483614624565b9150614eb882614e51565b604082019050919050565b60006020820190508181036000830152614edc81614ea0565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206160008201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b6000614f3f602883614624565b9150614f4a82614ee3565b604082019050919050565b60006020820190508181036000830152614f6e81614f32565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000614faf826145b6565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415614fe257614fe1614c75565b5b600182019050919050565b6000614ff8826145b6565b9150615003836145b6565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561503857615037614c75565b5b828201905092915050565b7f546f6b656e206c61756e63686564000000000000000000000000000000000000600082015250565b6000615079600e83614624565b915061508482615043565b602082019050919050565b600060208201905081810360008301526150a88161506c565b9050919050565b7f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d2060008201527f6175746f6d617465644d61726b65744d616b6572506169727300000000000000602082015250565b600061510b603983614624565b9150615116826150af565b604082019050919050565b6000602082019050818103600083015261513a816150fe565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b600061519d602583614624565b91506151a882615141565b604082019050919050565b600060208201905081810360008301526151cc81615190565b9050919050565b7f5377617020616d6f756e742063616e6e6f74206265206c6f776572207468616e60008201527f20302e3030312520746f74616c20737570706c792e0000000000000000000000602082015250565b600061522f603583614624565b915061523a826151d3565b604082019050919050565b6000602082019050818103600083015261525e81615222565b9050919050565b7f5377617020616d6f756e742063616e6e6f74206265206869676865722074686160008201527f6e20302e352520746f74616c20737570706c792e000000000000000000000000602082015250565b60006152c1603483614624565b91506152cc82615265565b604082019050919050565b600060208201905081810360008301526152f0816152b4565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000615353602683614624565b915061535e826152f7565b604082019050919050565b6000602082019050818103600083015261538281615346565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006153e5602483614624565b91506153f082615389565b604082019050919050565b60006020820190508181036000830152615414816153d8565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000615477602283614624565b91506154828261541b565b604082019050919050565b600060208201905081810360008301526154a68161546a565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000615509602583614624565b9150615514826154ad565b604082019050919050565b60006020820190508181036000830152615538816154fc565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b600061559b602383614624565b91506155a68261553f565b604082019050919050565b600060208201905081810360008301526155ca8161558e565b9050919050565b7f536e6970657220626c6f636b6564000000000000000000000000000000000000600082015250565b6000615607600e83614624565b9150615612826155d1565b602082019050919050565b60006020820190508181036000830152615636816155fa565b9050919050565b7f54726164696e67206973206e6f74206163746976652e00000000000000000000600082015250565b6000615673601683614624565b915061567e8261563d565b602082019050919050565b600060208201905081810360008301526156a281615666565b9050919050565b7f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60008201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b60208201527f20616c6c6f7765642e0000000000000000000000000000000000000000000000604082015250565b600061572b604983614624565b9150615736826156a9565b606082019050919050565b6000602082019050818103600083015261575a8161571e565b9050919050565b7f427579207472616e7366657220616d6f756e742065786365656473207468652060008201527f6d61785472616e73616374696f6e2e0000000000000000000000000000000000602082015250565b60006157bd602f83614624565b91506157c882615761565b604082019050919050565b600060208201905081810360008301526157ec816157b0565b9050919050565b7f4d61782077616c6c657420657863656564656400000000000000000000000000600082015250565b6000615829601383614624565b9150615834826157f3565b602082019050919050565b600060208201905081810360008301526158588161581c565b9050919050565b7f53656c6c207472616e7366657220616d6f756e7420657863656564732074686560008201527f206d61785472616e73616374696f6e2e00000000000000000000000000000000602082015250565b60006158bb603083614624565b91506158c68261585f565b604082019050919050565b600060208201905081810360008301526158ea816158ae565b9050919050565b60006158fc826145b6565b9150615907836145b6565b92508282101561591a57615919614c75565b5b828203905092915050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b6000615981602683614624565b915061598c82615925565b604082019050919050565b600060208201905081810360008301526159b081615974565b9050919050565b600081905092915050565b50565b60006159d26000836159b7565b91506159dd826159c2565b600082019050919050565b60006159f3826159c5565b9150819050919050565b6000606082019050615a126000830186614822565b615a1f6020830185614822565b615a2c6040830184614822565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600081519050615a7281614706565b92915050565b600060208284031215615a8e57615a8d6145ac565b5b6000615a9c84828501615a63565b91505092915050565b6000819050919050565b6000615aca615ac5615ac084615aa5565b6147a8565b6145b6565b9050919050565b615ada81615aaf565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b615b15816146f4565b82525050565b6000615b278383615b0c565b60208301905092915050565b6000602082019050919050565b6000615b4b82615ae0565b615b558185615aeb565b9350615b6083615afc565b8060005b83811015615b91578151615b788882615b1b565b9750615b8383615b33565b925050600181019050615b64565b5085935050505092915050565b600060a082019050615bb36000830188614822565b615bc06020830187615ad1565b8181036040830152615bd28186615b40565b9050615be1606083018561489f565b615bee6080830184614822565b9695505050505050565b600060c082019050615c0d600083018961489f565b615c1a6020830188614822565b615c276040830187615ad1565b615c346060830186615ad1565b615c41608083018561489f565b615c4e60a0830184614822565b979650505050505050565b600081519050615c68816145c0565b92915050565b600080600060608486031215615c8757615c866145ac565b5b6000615c9586828701615c59565b9350506020615ca686828701615c59565b9250506040615cb786828701615c59565b915050925092509256fea2646970667358221220d084c673fa8ecf2082e0b4406bd1ffd16792c96c1f18452552f25d666f2abbb264736f6c634300080a0033