0x6080604081815260049081361015610022575b505050361561002057600080fd5b005b600091823560e01c93846306fdde03146122c757508363071bc3c914611b9a578363078dfbe71461213b578363095ea7b3146120ed578363128fced11461201057836318160ddd14611fb357836320e8c56514611ba6578363213cae6314611b9a57836323b872dd146119cb578363313ce567146119705783633644e5151461193657836338d52e0f146118c85783633ba0b9a91461187c5783633f4ba83a1461176e5783634e71e0c8146116615783635b9fe37f146115f35783635c975abb146115b25783635cbadbe41461151357836370a08231146114ae578363712318c414611440578363769f8e5d1461123357836376d5de85146111c5578363784367d6146111b95783637ecebe00146111585783638456cb59146110a75783638da5cb5b1461105557836395d89b4114610f01578363a40bee5014610dfa578363a9059cbb14610d27578363a9f8d18114610ceb578363b2016bd414610c7d578363b8f82b2614610be3578363c4f59f9b14610b74578363cbe52ae314610ad3578363d505accf14610879578363da88ecb41461082b578363dd62ed3e146107b8578363e30c397814610766578363ea64a820146106db578363eb3beb291461066d578363ef5cfb8c1461037957508263f7c618c11461030c578263f8b2f9911461022857505063fa5a4f061461021b575b388080610012565b610223612681565b610213565b3461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261030857610304906002549061026e60028360f81c14156126cd565b7f02000000000000000000000000000000000000000000000000000000000000007effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff809316176002556102be612aa1565b50507f01000000000000000000000000000000000000000000000000000000000000006102e9613123565b9260025416176002555191829160208352602083019061264d565b0390f35b5080fd5b3461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610308576020905173ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000d533a949740bb3306d119cc777fa900ba034cd52168152f35b913461066a576020807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610308576103b2612607565b90600254906103c760028360f81c14156126cd565b7f02000000000000000000000000000000000000000000000000000000000000007effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80931617600255610418836129bc565b7f000000000000000000000000d533a949740bb3306d119cc777fa900ba034cd529461044386614158565b9161044e83516128c1565b958073ffffffffffffffffffffffffffffffffffffffff95868816915b86518110156105d8578761047f82896129a8565b51168452603980865286852084865286528685205460809190821c6104a4848e6129a8565b526104af838d6129a8565b516104c5575b50506104c090612910565b61046b565b896104d0848b6129a8565b5116865286528685208486528652868520906fffffffffffffffffffffffffffffffff91828154169055610504838d6129a8565b51908282116105d4578a610518858c6129a8565b51168752603b8852828988209216908254901c039182116105a7578b8b610599858d610591828f61058c6104c09b9a6105a09a906fffffffffffffffffffffffffffffffff7fffffffffffffffffffffffffffffffff0000000000000000000000000000000083549260801b169116179055565b6129a8565b5116936129a8565b51916143d6565b908d6104b5565b5060248560118f7f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b8680fd5b8985610304887f01000000000000000000000000000000000000000000000000000000000000008f887f2193aa20a3717f5f4ac79482f4f553e5f0afe8f4e6ec3e3d1aa2e138adc4763f61064361062f8b94614158565b610650875192839289845289840190612476565b8281038b8401528b61264d565b0390a260025416176002555192828493845283019061264d565b80fd5b503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610308576020905173ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000096efdf95cc47fe90e8f63d2f5ef9fb8b180daeb9168152f35b50346103085760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261030857806103049273ffffffffffffffffffffffffffffffffffffffff61072d612607565b168152603b60209081529190205491516fffffffffffffffffffffffffffffffff8316815260809290921c908201529081906040820190565b503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103085760209073ffffffffffffffffffffffffffffffffffffffff600754169051908152f35b503461030857807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261030857806020926107f3612607565b6107fb61262a565b73ffffffffffffffffffffffffffffffffffffffff91821683526001865283832091168252845220549051908152f35b503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103085761030490610866613123565b905191829160208352602083019061264d565b8290346103085760e07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610308576108b2612607565b6108ba61262a565b906044359260643560843560ff811681036105d457814211610a765773ffffffffffffffffffffffffffffffffffffffff90818516928389526005602052898920908154916001830190558a519060208201927f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98452868d840152858a1660608401528a608084015260a083015260c082015260c0815260e0810181811067ffffffffffffffff821117610a4a578b525190206109d8916109d09161097d614020565b918c519160208301937f1901000000000000000000000000000000000000000000000000000000000000855260228401526042830152604282526109c082612801565b60c4359260a43592519020613f5e565b919091613d39565b16036109ed57506109ea939450613bc4565b80f35b60649060208751917f08c379a0000000000000000000000000000000000000000000000000000000008352820152601e60248201527f45524332305065726d69743a20696e76616c6964207369676e617475726500006044820152fd5b60248b6041897f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b60648360208a51917f08c379a0000000000000000000000000000000000000000000000000000000008352820152601d60248201527f45524332305065726d69743a206578706972656420646561646c696e650000006044820152fd5b823461066a57827ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261066a5750610b0b612607565b90610b15826136ae565b15610b3057602083610b2960243585613654565b9051908152f35b73ffffffffffffffffffffffffffffffffffffffff60249351927f88a505610000000000000000000000000000000000000000000000000000000084521690820152fd5b503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103085761030490610bd07f000000000000000000000000d533a949740bb3306d119cc777fa900ba034cd52614158565b9051918291602083526020830190612476565b823461066a57827ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261066a5750610c1b612607565b90610c25826136ae565b15610c3957602083610b29602435856135f9565b73ffffffffffffffffffffffffffffffffffffffff60249351927faeabe7180000000000000000000000000000000000000000000000000000000084521690820152fd5b503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610308576020905173ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000b27d1729489d04473631f0afaca3c3a7389ac9f8168152f35b503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261030857602090603a549051908152f35b503461030857807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610308576020907f0100000000000000000000000000000000000000000000000000000000000000610d82612607565b610deb60025491610d9960028460f81c14156126cd565b7f02000000000000000000000000000000000000000000000000000000000000007effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80941617600255602435903361371f565b60025416176002555160018152f35b92503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103085773ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000f939e0a03fb07f59a73314e73794be0e57ac1b4e16926020825180927f313ce56700000000000000000000000000000000000000000000000000000000825281875afa908115610ef5578391610eb5575b5060ff90606094835194855260208501521690820152f35b90506020813d8211610eed575b81610ecf60209383612868565b81010312610ee9575160ff81168103610ee9576060610e9d565b8280fd5b3d9150610ec2565b505051903d90823e3d90fd5b92503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261030857805191809380549160019083821c9282851694851561104b575b602095868610811461101f57858952908115610fdd5750600114610f85575b6103048787610f7b828c0383612868565b5191829182612410565b81529295507f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5b828410610fca575050508261030494610f7b92820101943880610f6a565b8054868501880152928601928101610fac565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168887015250505050151560051b8301019250610f7b826103043880610f6a565b6024846022857f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b93607f1693610f4b565b503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103085760209073ffffffffffffffffffffffffffffffffffffffff600654169051908152f35b503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103085760207f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2589161111d73ffffffffffffffffffffffffffffffffffffffff600654163314612732565b611125612797565b60017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00603854161760385551338152a180f35b50346103085760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610308578060209273ffffffffffffffffffffffffffffffffffffffff6111a9612607565b1681526005845220549051908152f35b50505050610223612681565b503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610308576020905173ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000b27d1729489d04473631f0afaca3c3a7389ac9f8168152f35b823461066a5760a07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261066a5761126b612607565b6044359273ffffffffffffffffffffffffffffffffffffffff808516926024359284870361143c576064359660843596871515880361066a5750600254966112b960028960f81c14156126cd565b7f02000000000000000000000000000000000000000000000000000000000000007effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8099161760025561130a826136ae565b1561140d5785156113e557611330918691156113d65761132a82306139af565b84613344565b968088106113a1576020888a7f01000000000000000000000000000000000000000000000000000000000000008a8a8a8a8a8651928352878984015216907faee47cdf925cf525fdae94f9777ee5a06cac37e1c41220d0a8a89ed154f62d1c863392a4600254161760025551908152f35b60449250878951927fbfee4ca00000000000000000000000000000000000000000000000000000000084528301526024820152fd5b6113e082336139af565b61132a565b828a517fc3d83b07000000000000000000000000000000000000000000000000000000008152fd5b602483888c51917f88a50561000000000000000000000000000000000000000000000000000000008352820152fd5b8580fd5b503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610308576020905173ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000032a4bcd8dea5e18a12a50584682f8e4b77fff2df168152f35b50346103085760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261030857602090610b296114ec612607565b73ffffffffffffffffffffffffffffffffffffffff16600052600060205260406000205490565b503461030857807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261030857806103049261154f612607565b61155761262a565b73ffffffffffffffffffffffffffffffffffffffff91821683526039602090815284842091909216835281529190205491516fffffffffffffffffffffffffffffffff8316815260809290921c908201529081906040820190565b503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103085760209060ff6038541690519015158152f35b503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610308576020905173ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000361384a0d755f972e5eea26e4f4efbaf976b6461168152f35b9034610ee957827ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610ee9576007549073ffffffffffffffffffffffffffffffffffffffff9283831691823303611711575050806006549384167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08680a37fffffffffffffffffffffffff0000000000000000000000000000000000000000809316176006551660075580f35b90602060649251917f08c379a0000000000000000000000000000000000000000000000000000000008352820152602060248201527f4f776e61626c653a2063616c6c657220213d2070656e64696e67206f776e65726044820152fd5b34610ee957827ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610ee9576117bf73ffffffffffffffffffffffffffffffffffffffff600654163314612732565b6038549060ff82161561181f57507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff006020921660385551338152a180f35b60649060208451917f08c379a0000000000000000000000000000000000000000000000000000000008352820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152fd5b503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261030857602090610b296118c36118bc61346d565b91906132db565b61330b565b503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610308576020905173ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000f939e0a03fb07f59a73314e73794be0e57ac1b4e168152f35b503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261030857602090610b29614020565b503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610308576020905160ff7f0000000000000000000000000000000000000000000000000000000000000012168152f35b8290346103085760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261030857611a04612607565b611a0c61262a565b90604435928560025495611a2660028860f81c14156126cd565b7f02000000000000000000000000000000000000000000000000000000000000007effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8098161760025573ffffffffffffffffffffffffffffffffffffffff8416815260016020528181203382526020522054907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611af0575b6020877f010000000000000000000000000000000000000000000000000000000000000088610deb89898961371f565b848210611b3d5750926020959492610deb92611b30837f010000000000000000000000000000000000000000000000000000000000000097033383613bc4565b9250929495819450611ac0565b60649060208851917f08c379a0000000000000000000000000000000000000000000000000000000008352820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152fd5b505050506102236124c0565b925060807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261030857611bda612607565b91611be361262a565b6044359360643594600293845497611c00868a60f81c14156126cd565b7f02000000000000000000000000000000000000000000000000000000000000007effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff809a16178655611c50856136ae565b15611f6d578215611f465773ffffffffffffffffffffffffffffffffffffffff8581169586611eae57843403611e515784611c8a916131cf565b98808a10611e1c57508416938415611dbf57611cad90611ca8612797565b6129bc565b888811610308578554908989168a831601908a8211611d9357509380927f01000000000000000000000000000000000000000000000000000000000000009694927fff000000000000000000000000000000000000000000000000000000000000008c60209d98169116178855818152808b52888120611d2e8b8254612a94565b90557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8b8a518c8152a3865190815287898201527f5fe47ed6d4225326d3303476197d782ded5a4e9c14f479dc9ec4992af4e85d59873392a482541617905551908152f35b8360116024927f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b60648260208a51917f08c379a0000000000000000000000000000000000000000000000000000000008352820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152fd5b826044918b8b51927fbc71f2ba0000000000000000000000000000000000000000000000000000000084528301526024820152fd5b60648360208b51917f08c379a0000000000000000000000000000000000000000000000000000000008352820152600c60248201527f657468206d69736d6174636800000000000000000000000000000000000000006044820152fd5b88517f23b872dd0000000000000000000000000000000000000000000000000000000060208201523360248201523060448201528560648201526064815260a0810181811067ffffffffffffffff821117611f1a5791611f158792611c8a948d528a614195565b6131cf565b6024866041877f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b86517fa907f2f0000000000000000000000000000000000000000000000000000000008152fd5b8460249173ffffffffffffffffffffffffffffffffffffffff8951927faeabe7180000000000000000000000000000000000000000000000000000000084521690820152fd5b503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610308576020907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600254169051908152f35b50903461066a57602091827ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103085761204b612607565b916120757f000000000000000000000000d533a949740bb3306d119cc777fa900ba034cd52614158565b9261208084516128c1565b9473ffffffffffffffffffffffffffffffffffffffff91821691835b86518110156120db5780826120b36001938a6129a8565b511686526039845286862085875284528686205460801c6120d4828b6129a8565b520161209c565b8551838152806103048186018b61264d565b503461030857807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103085760209061213461212a612607565b6024359033613bc4565b5160018152f35b9034610ee95760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610ee957612173612607565b916024359182151583036122c35760443592831515840361143c5773ffffffffffffffffffffffffffffffffffffffff9485916121b583600654163314612732565b15612291571692831590811591612289575b501561222c575050806006549283167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08580a37fffffffffffffffffffffffff0000000000000000000000000000000000000000809216176006556007541660075580f35b90602060649251917f08c379a0000000000000000000000000000000000000000000000000000000008352820152601560248201527f4f776e61626c653a207a65726f206164647265737300000000000000000000006044820152fd5b9050866121c7565b9350505050167fffffffffffffffffffffffff0000000000000000000000000000000000000000600754161760075580f35b8480fd5b91903461240c57837ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261240c57600354600181811c9186908281168015612402575b60209586861082146123d65750848852908115612396575060011461233d575b6103048686610f7b828b0383612868565b929550600383527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b5b828410612383575050508261030494610f7b92820101948661232c565b8054868501880152928601928101612366565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001687860152505050151560051b8301019250610f7b826103048661232c565b8360226024927f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b93607f169361230c565b8380fd5b60208082528251818301819052939260005b858110612462575050507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8460006040809697860101520116010190565b818101830151848201604001528201612422565b90815180825260208080930193019160005b828110612496575050505090565b835173ffffffffffffffffffffffffffffffffffffffff1685529381019392810192600101612488565b5034612602576000807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261066a576040516060810181811067ffffffffffffffff8211176125d5576040526002815260403660208301376125238161296c565b73ffffffffffffffffffffffffffffffffffffffff90817f000000000000000000000000f939e0a03fb07f59a73314e73794be0e57ac1b4e1690528151600110156125a85761030492507f000000000000000000000000b27d1729489d04473631f0afaca3c3a7389ac9f8166040820152604051918291602083526020830190612476565b6024837f4e487b710000000000000000000000000000000000000000000000000000000081526032600452fd5b6024837f4e487b710000000000000000000000000000000000000000000000000000000081526041600452fd5b600080fd5b6004359073ffffffffffffffffffffffffffffffffffffffff8216820361260257565b6024359073ffffffffffffffffffffffffffffffffffffffff8216820361260257565b90815180825260208080930193019160005b82811061266d575050505090565b83518552938101939281019260010161265f565b50346126025760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126126025760206126c36126be612607565b6136ae565b6040519015158152f35b156126d457565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152fd5b1561273957565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b60ff603854166127a357565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152fd5b6080810190811067ffffffffffffffff82111761281d57604052565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040810190811067ffffffffffffffff82111761281d57604052565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff82111761281d57604052565b67ffffffffffffffff811161281d5760051b60200190565b906128cb826128a9565b6128d86040519182612868565b8281527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe061290682946128a9565b0190602036910137565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811461293d5760010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8051156129795760200190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b80518210156129795760209160051b010190565b6129c4612aa1565b90805115612a0d5773ffffffffffffffffffffffffffffffffffffffff83168015159081612a02575b506129f757505050565b612a0092612f0b565b565b9050301415386129ed565b505050565b612a1a612aa1565b91815115612a815773ffffffffffffffffffffffffffffffffffffffff9083838383168015159081612a76575b50612a65575b50505083168015159081612a0257506129f757505050565b612a6e92612f0b565b388383612a4d565b905030141538612a47565b50505050565b9190820391821161293d57565b9190820180921161293d57565b612aca7f000000000000000000000000d533a949740bb3306d119cc777fa900ba034cd52614158565b90612ad582516128c1565b825115612f0857603a544303612b50575b6000805b8451811015612b4b578073ffffffffffffffffffffffffffffffffffffffff612b16612b4693886129a8565b51168352603b6020526fffffffffffffffffffffffffffffffff604084205416612b4082866129a8565b52612910565b612aea565b505090565b909143603a557effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60025416612ba37f000000000000000000000000b27d1729489d04473631f0afaca3c3a7389ac9f8614158565b936040517f4148530400000000000000000000000000000000000000000000000000000000815260208180612be460049960408b8401526044830190612476565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60248301520381600073ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000361384a0d755f972e5eea26e4f4efbaf976b6461165af18015612ec657612edd575b5060005b8351811015612ed25773ffffffffffffffffffffffffffffffffffffffff612c7e82866129a8565b511673ffffffffffffffffffffffffffffffffffffffff612c9f83876129a8565b511680612e48575047905b80600052612cc7603b928360205260406000205460801c90612a87565b9181600052806020526fffffffffffffffffffffffffffffffff60406000205416918215612e3f575b86612e21575b6fffffffffffffffffffffffffffffffff8311612602576000526020526fffffffffffffffffffffffffffffffff604060002091167fffffffffffffffffffffffffffffffff000000000000000000000000000000008254161790556fffffffffffffffffffffffffffffffff8111612602576fffffffffffffffffffffffffffffffff60406000209116815460801c01906fffffffffffffffffffffffffffffffff8211612df357612dee9291612de991906fffffffffffffffffffffffffffffffff7fffffffffffffffffffffffffffffffff0000000000000000000000000000000083549260801b169116179055565b612910565b612c56565b6011887f4e487b71000000000000000000000000000000000000000000000000000000006000525260246000fd5b91612e3990612e33886118c3876132db565b90612a94565b91612cf6565b60019250612cf0565b6020602491604051928380927f70a08231000000000000000000000000000000000000000000000000000000008252308d8301525afa908115612ec657600091612e94575b5090612caa565b90506020813d602011612ebe575b81612eaf60209383612868565b81010312612602575138612e8d565b3d9150612ea2565b6040513d6000823e3d90fd5b509291935050612ae6565b602090813d8311612f01575b612ef38183612868565b810103126126025738612c52565b503d612ee9565b90565b9092919273ffffffffffffffffffffffffffffffffffffffff8083169283151580613119575b156130ea57612f619073ffffffffffffffffffffffffffffffffffffffff16600052600060205260406000205490565b9160005b81518110156130e15782612f7982846129a8565b511690612f8681896129a8565b51826000526039906020908282526040806000208a60005283526fffffffffffffffffffffffffffffffff918282600020541680156130d9575b8181146130c957670de0b6b3a7640000612fe6612fe06130059385612a87565b8d6132f8565b0488600052868652836000208d6000528652836000205460801c612a94565b9183821161260257838311612602578051948186019686881067ffffffffffffffff89111761281d576130c499868095612de99a86521688528483890196168652600052815281600020908d600052526000209351167fffffffffffffffffffffffffffffffff0000000000000000000000000000000084541617835551166fffffffffffffffffffffffffffffffff7fffffffffffffffffffffffffffffffff0000000000000000000000000000000083549260801b169116179055565b612f65565b5050505050506130c49150612910565b506001612fc0565b50505050509050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fd5b5030841415612f31565b61314c7f000000000000000000000000d533a949740bb3306d119cc777fa900ba034cd52614158565b9061315782516128c1565b91600090815b8151811015612a0d578073ffffffffffffffffffffffffffffffffffffffff613188600193856129a8565b51168452603b6020526fffffffffffffffffffffffffffffffff6040852054166131b282886129a8565b520161315d565b9190826040910312612602576020825192015190565b73ffffffffffffffffffffffffffffffffffffffff9081167f000000000000000000000000b27d1729489d04473631f0afaca3c3a7389ac9f8821603613213575090565b6040906064600093835194859384927f3edd1128000000000000000000000000000000000000000000000000000000008452817f000000000000000000000000f939e0a03fb07f59a73314e73794be0e57ac1b4e16600485015260248401528160448401527f00000000000000000000000096efdf95cc47fe90e8f63d2f5ef9fb8b180daeb9165af1908115612ec6576000916132ae575090565b6132cf915060403d81116132d4575b6132c78183612868565b8101906131b9565b905090565b503d6132bd565b90670de0b6b3a76400009182810292818404149015171561293d57565b8181029291811591840414171561293d57565b8115613315570490565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b907f000000000000000000000000b27d1729489d04473631f0afaca3c3a7389ac9f89073ffffffffffffffffffffffffffffffffffffffff9081811682841603613395575050612f089183916143d6565b915093929160406133b46000946118c36133ad61346d565b92906132f8565b9560648251809681937fead5d359000000000000000000000000000000000000000000000000000000008352807f000000000000000000000000f939e0a03fb07f59a73314e73794be0e57ac1b4e1660048401528a60248401528160448401527f00000000000000000000000096efdf95cc47fe90e8f63d2f5ef9fb8b180daeb9165af1918215612ec657612a00938693613450575b506143d6565b6134679060403d81116132d4576132c78183612868565b5061344a565b604051907f993dadeb00000000000000000000000000000000000000000000000000000000825273ffffffffffffffffffffffffffffffffffffffff91827f00000000000000000000000096efdf95cc47fe90e8f63d2f5ef9fb8b180daeb9166004820152827f000000000000000000000000f939e0a03fb07f59a73314e73794be0e57ac1b4e1660248201526020908181604481877f00000000000000000000000032a4bcd8dea5e18a12a50584682f8e4b77fff2df165afa908115612ec6576000916135cc575b50908060049294604051938480927f18160ddd0000000000000000000000000000000000000000000000000000000082527f000000000000000000000000b27d1729489d04473631f0afaca3c3a7389ac9f8165afa908115612ec6576000916135a0575b50905090565b82813d83116135c5575b6135b48183612868565b8101031261066a575051803861359a565b503d6135aa565b908282813d83116135f2575b6135e28183612868565b8101031261066a57505181613536565b503d6135d8565b73ffffffffffffffffffffffffffffffffffffffff807f000000000000000000000000b27d1729489d04473631f0afaca3c3a7389ac9f81691161460001461363e5790565b612f08906118c361364d61346d565b90926132f8565b73ffffffffffffffffffffffffffffffffffffffff807f000000000000000000000000b27d1729489d04473631f0afaca3c3a7389ac9f8169116146000146136995790565b612f08906118c36136a861346d565b926132f8565b73ffffffffffffffffffffffffffffffffffffffff809116817f000000000000000000000000f939e0a03fb07f59a73314e73794be0e57ac1b4e1681149182156136f757505090565b7f000000000000000000000000b27d1729489d04473631f0afaca3c3a7389ac9f81614919050565b909173ffffffffffffffffffffffffffffffffffffffff9182811692831561392b5784169384156138a757848414613849576137629161375d612797565b612a12565b6000828152806020526040812054918083106137c557604082827fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9587602096528286520382822055868152206137ba828254612a94565b9055604051908152a3565b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e636500000000000000000000000000000000000000000000000000006064820152fd5b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f45524332303a207472616e7366657220746f2073656c660000000000000000006044820152fd5b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f65737300000000000000000000000000000000000000000000000000000000006064820152fd5b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f64726573730000000000000000000000000000000000000000000000000000006064820152fd5b73ffffffffffffffffffffffffffffffffffffffff8116908115613b40576139d990611ca8612797565b600091818352826020526040832054818110613abc578190838552846020520360408420557effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80821161240c576002549080831681831603818111613a8f57917fff000000000000000000000000000000000000000000000000000000000000007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef949260209416911617600255604051908152a3565b6024867f4e487b710000000000000000000000000000000000000000000000000000000081526011600452fd5b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60448201527f63650000000000000000000000000000000000000000000000000000000000006064820152fd5b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360448201527f73000000000000000000000000000000000000000000000000000000000000006064820152fd5b73ffffffffffffffffffffffffffffffffffffffff809116918215613cb65716918215613c325760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925918360005260018252604060002085600052825280604060002055604051908152a3565b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f73730000000000000000000000000000000000000000000000000000000000006064820152fd5b60846040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f72657373000000000000000000000000000000000000000000000000000000006064820152fd5b6005811015613f2f5780613d4a5750565b60018103613db05760646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152fd5b60028103613e165760646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152fd5b60038103613ea25760846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c60448201527f75650000000000000000000000000000000000000000000000000000000000006064820152fd5b600414613eab57565b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c60448201527f75650000000000000000000000000000000000000000000000000000000000006064820152fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b9291907f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083116140145760ff16601b81141580614009575b613ffd579160809493916020936040519384528484015260408301526060820152600093849182805260015afa15613ff057815173ffffffffffffffffffffffffffffffffffffffff811615613fea579190565b50600190565b50604051903d90823e3d90fd5b50505050600090600490565b50601c811415613f96565b50505050600090600390565b73ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000e05082b184a34668cd8a904d85fa815802bbb04c1630148061412f575b15614088577fd27718ad4e6e2bd9b10d50c4498e16f1d5e9761eb8f54cfb005888929b08507d90565b60405160208101907f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f82527f2b59a1372893db901d628a2a2f5c95a27a0b20ffb39002a1124c693e38cfc16260408201527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660808201523060a082015260a0815260c0810181811067ffffffffffffffff82111761281d5760405251902090565b507f0000000000000000000000000000000000000000000000000000000000000001461461405f565b90604051916141668361284c565b600183526020368185013773ffffffffffffffffffffffffffffffffffffffff61418f8461296c565b91169052565b73ffffffffffffffffffffffffffffffffffffffff16906040516141b88161284c565b6020928382527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c656484830152803b156142c4579061420d9160008481959282888195519301915af1614207614322565b90614380565b80518061421a5750505050565b81849181010312610308578201519081159182150361066a575061424057808080612a81565b608490604051907f08c379a00000000000000000000000000000000000000000000000000000000082526004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f742073756363656564000000000000000000000000000000000000000000006064820152fd5b606484604051907f08c379a00000000000000000000000000000000000000000000000000000000082526004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152fd5b3d1561437b573d9067ffffffffffffffff821161281d576040519161436f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8401160184612868565b82523d6000602084013e565b606090565b9091901561438c575090565b81511561439c5750805190602001fd5b6143d2906040519182917f08c379a000000000000000000000000000000000000000000000000000000000835260048301612410565b0390fd5b8215612a0d5773ffffffffffffffffffffffffffffffffffffffff9081169081614473575050600080809381935af161440d614322565b501561441557565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f6574682073656e64206661696c656400000000000000000000000000000000006044820152fd5b92612a0093604051937fa9059cbb0000000000000000000000000000000000000000000000000000000060208601521660248401526044830152604482526144ba82612801565b61419556fea2646970667358221220a2b04f00904acf7fcf39ca11a1b9f1493fd822eeb5419627f538dacaabf3c8df64736f6c63430008110033
0x6102408060405234620008cd576200513f8038038091620000218285620008ee565b8339810160e082820312620008cd5781516001600160401b038111620008cd57816200004f9184016200092e565b602083015190916001600160401b038211620008cd57620000729184016200092e565b620000806040840162000998565b916200008f6060850162000998565b936200009e6080820162000998565b620000ba60c0620000b260a0850162000998565b930162000998565b60405163313ce56760e01b81529093906020816004816001600160a01b038c165afa908115620004f25760009162000886575b5060408051969087016001600160401b038111888210176200063b5760405260018752603160f81b602088015282516001600160401b0381116200063b57600354600181811c911680156200087b575b60208210146200075e57601f811162000815575b50806020601f82116001146200078b576000916200077f575b508160011b916000199060031b1c1916176003555b8051906001600160401b0382116200063b5760045490600182811c9216801562000774575b60208310146200075e5781601f849311620006ec575b50602090601f83116001146200065d5760009262000651575b50508160011b916000199060031b1c1916176004555b608052600160f81b60018060f81b036002541617600255602081519101209360208151910120846101005280610120524660c052604051946000805160206200511f8339815191526020870152604086015260608501524660808501523060a085015260a084528360c081011060018060401b0360c0860111176200063b5760c084016040528351602085012060a0523060e0526000805160206200511f8339815191526101405260ff196038541660385560075460ff8160a81c1615948580966200062a575b80156200060e575b15620005ae575060ff60a01b198116600160a01b176007558462000595575b506101609580875260075460ff8160a81c16156200053c57600680546001600160a01b03191633179055600495620004fe575b506101809586526101a09081526101c09182526101e08381526102009485526040516399248ea760e01b8152959093602091879182906001600160a01b03165afa948515620004f257600095620004ab575b50610220948552855182516200037f916001600160a01b039182169116620009ad565b604051956144f5978862000c2a8939608051886119a7015260a05188614066015260c05188614132015260e05188614037015261010051886140b5015261012051886140db015261014051886140920152518761120f015251868181610e41015281816119120152818161253c01528181613248015281816133e3015281816134d501526136c9015251858181610cc70152818161256f01528181612b7f015281816131e90152818161334701528181613569015281816136110152818161366c01526136f90152518481816106b70152818161327a0152818161341601526134ad01525183818161163d0152612c2501525182818161148a01526135050152518181816103550152818161041a01528181610bac0152818161205101528181612aa601526131280152f35b90946020823d602011620004e9575b81620004c960209383620008ee565b81010312620004e65750620004de9062000998565b93386200035c565b80fd5b3d9150620004ba565b6040513d6000823e3d90fd5b60ff60a81b1916600755604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602090a1386200030a565b60405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608490fd5b61ffff60a01b191661010160a01b1760075538620002d7565b60c060849162461bcd60e51b82820152602060c4820152602e60e48201527f496e697469616c697a61626c653a20636f6e747261637420697320616c7265616101048201526d191e481a5b9a5d1a585b1a5e995960921b61012482015201fd5b50303b158015620002b85750600160ff8360a01c1614620002b8565b50600160ff8360a01c1610620002b0565b634e487b7160e01b600052604160045260246000fd5b015190503880620001d3565b6004600090815293507f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b91905b601f1984168510620006d0576001945083601f19811610620006b6575b505050811b01600455620001e9565b015160001960f88460031b161c19169055388080620006a7565b818101518355602094850194600190930192909101906200068a565b60046000529091507f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b601f840160051c81016020851062000756575b90849392915b601f830160051c8201811062000746575050620001ba565b600081558594506001016200072e565b508062000728565b634e487b7160e01b600052602260045260246000fd5b91607f1691620001a4565b9050840151386200016a565b6003600090815292507fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b905b601f1983168410620007fc576001935082601f19811610620007e2575b5050811b016003556200017f565b86015160001960f88460031b161c191690553880620007d4565b86810151825560209384019360019092019101620007b7565b60036000527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b601f830160051c81016020841062000873575b601f830160051c820181106200086657505062000151565b600081556001016200084e565b50806200084e565b90607f16906200013d565b6020813d602011620008c4575b81620008a260209383620008ee565b81010312620008c057519060ff82168203620004e6575038620000ed565b5080fd5b3d915062000893565b600080fd5b608081019081106001600160401b038211176200063b57604052565b601f909101601f19168101906001600160401b038211908210176200063b57604052565b6001600160401b0381116200063b57601f01601f191660200190565b919080601f84011215620008cd578251906200094a8262000912565b916200095a6040519384620008ee565b808352602091828287010111620008cd5760005b8181106200098457508260009394955001015290565b85810183015184820184015282016200096e565b51906001600160a01b0382168203620008cd57565b6001600160a01b03919082811690811562000c2357604091825180958195636eb1769f60e11b83523060048401521691826024830152602096879160449788915afa90811562000c185760009162000be5575b5060016001605f1b031162000a17575b5050505050565b82519060008087840163095ea7b360e01b94858252846024820152828982015288815262000a4581620008d2565b519082875af13d1562000bdd573d62000a5e8162000912565b9062000a6d87519283620008ee565b81523d60008983013e5b8162000b9f575b501562000b6d579160009291838093865190898201938452602482015281198882015287815262000aaf81620008d2565b51925af13d1562000b65573d62000ac68162000912565b9062000ad584519283620008ee565b81523d60008683013e5b8162000b27575b501562000af557808062000a10565b5162461bcd60e51b81526004810192909252600c60248301526b5361666520417070726f766560a01b90820152606490fd5b8091505184811591821562000b42575b505090503862000ae6565b8380929350010312620008cd578301518015158103620008cd5780843862000b37565b606062000adf565b835162461bcd60e51b815260048101879052600c60248201526b5361666520417070726f766560a01b81870152606490fd5b8091505187811591821562000bba575b505090503862000a7e565b8380929350010312620008cd578601518015158103620008cd5780873862000baf565b606062000a77565b908682813d831162000c10575b62000bfe8183620008ee565b81010312620004e65750513862000a00565b503d62000bf2565b84513d6000823e3d90fd5b5050505056fe6080604081815260049081361015610022575b505050361561002057600080fd5b005b600091823560e01c93846306fdde03146122c757508363071bc3c914611b9a578363078dfbe71461213b578363095ea7b3146120ed578363128fced11461201057836318160ddd14611fb357836320e8c56514611ba6578363213cae6314611b9a57836323b872dd146119cb578363313ce567146119705783633644e5151461193657836338d52e0f146118c85783633ba0b9a91461187c5783633f4ba83a1461176e5783634e71e0c8146116615783635b9fe37f146115f35783635c975abb146115b25783635cbadbe41461151357836370a08231146114ae578363712318c414611440578363769f8e5d1461123357836376d5de85146111c5578363784367d6146111b95783637ecebe00146111585783638456cb59146110a75783638da5cb5b1461105557836395d89b4114610f01578363a40bee5014610dfa578363a9059cbb14610d27578363a9f8d18114610ceb578363b2016bd414610c7d578363b8f82b2614610be3578363c4f59f9b14610b74578363cbe52ae314610ad3578363d505accf14610879578363da88ecb41461082b578363dd62ed3e146107b8578363e30c397814610766578363ea64a820146106db578363eb3beb291461066d578363ef5cfb8c1461037957508263f7c618c11461030c578263f8b2f9911461022857505063fa5a4f061461021b575b388080610012565b610223612681565b610213565b3461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261030857610304906002549061026e60028360f81c14156126cd565b7f02000000000000000000000000000000000000000000000000000000000000007effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff809316176002556102be612aa1565b50507f01000000000000000000000000000000000000000000000000000000000000006102e9613123565b9260025416176002555191829160208352602083019061264d565b0390f35b5080fd5b3461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610308576020905173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b913461066a576020807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610308576103b2612607565b90600254906103c760028360f81c14156126cd565b7f02000000000000000000000000000000000000000000000000000000000000007effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80931617600255610418836129bc565b7f00000000000000000000000000000000000000000000000000000000000000009461044386614158565b9161044e83516128c1565b958073ffffffffffffffffffffffffffffffffffffffff95868816915b86518110156105d8578761047f82896129a8565b51168452603980865286852084865286528685205460809190821c6104a4848e6129a8565b526104af838d6129a8565b516104c5575b50506104c090612910565b61046b565b896104d0848b6129a8565b5116865286528685208486528652868520906fffffffffffffffffffffffffffffffff91828154169055610504838d6129a8565b51908282116105d4578a610518858c6129a8565b51168752603b8852828988209216908254901c039182116105a7578b8b610599858d610591828f61058c6104c09b9a6105a09a906fffffffffffffffffffffffffffffffff7fffffffffffffffffffffffffffffffff0000000000000000000000000000000083549260801b169116179055565b6129a8565b5116936129a8565b51916143d6565b908d6104b5565b5060248560118f7f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b8680fd5b8985610304887f01000000000000000000000000000000000000000000000000000000000000008f887f2193aa20a3717f5f4ac79482f4f553e5f0afe8f4e6ec3e3d1aa2e138adc4763f61064361062f8b94614158565b610650875192839289845289840190612476565b8281038b8401528b61264d565b0390a260025416176002555192828493845283019061264d565b80fd5b503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610308576020905173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b50346103085760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261030857806103049273ffffffffffffffffffffffffffffffffffffffff61072d612607565b168152603b60209081529190205491516fffffffffffffffffffffffffffffffff8316815260809290921c908201529081906040820190565b503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103085760209073ffffffffffffffffffffffffffffffffffffffff600754169051908152f35b503461030857807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261030857806020926107f3612607565b6107fb61262a565b73ffffffffffffffffffffffffffffffffffffffff91821683526001865283832091168252845220549051908152f35b503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103085761030490610866613123565b905191829160208352602083019061264d565b8290346103085760e07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610308576108b2612607565b6108ba61262a565b906044359260643560843560ff811681036105d457814211610a765773ffffffffffffffffffffffffffffffffffffffff90818516928389526005602052898920908154916001830190558a519060208201927f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98452868d840152858a1660608401528a608084015260a083015260c082015260c0815260e0810181811067ffffffffffffffff821117610a4a578b525190206109d8916109d09161097d614020565b918c519160208301937f1901000000000000000000000000000000000000000000000000000000000000855260228401526042830152604282526109c082612801565b60c4359260a43592519020613f5e565b919091613d39565b16036109ed57506109ea939450613bc4565b80f35b60649060208751917f08c379a0000000000000000000000000000000000000000000000000000000008352820152601e60248201527f45524332305065726d69743a20696e76616c6964207369676e617475726500006044820152fd5b60248b6041897f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b60648360208a51917f08c379a0000000000000000000000000000000000000000000000000000000008352820152601d60248201527f45524332305065726d69743a206578706972656420646561646c696e650000006044820152fd5b823461066a57827ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261066a5750610b0b612607565b90610b15826136ae565b15610b3057602083610b2960243585613654565b9051908152f35b73ffffffffffffffffffffffffffffffffffffffff60249351927f88a505610000000000000000000000000000000000000000000000000000000084521690820152fd5b503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103085761030490610bd07f0000000000000000000000000000000000000000000000000000000000000000614158565b9051918291602083526020830190612476565b823461066a57827ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261066a5750610c1b612607565b90610c25826136ae565b15610c3957602083610b29602435856135f9565b73ffffffffffffffffffffffffffffffffffffffff60249351927faeabe7180000000000000000000000000000000000000000000000000000000084521690820152fd5b503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610308576020905173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261030857602090603a549051908152f35b503461030857807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610308576020907f0100000000000000000000000000000000000000000000000000000000000000610d82612607565b610deb60025491610d9960028460f81c14156126cd565b7f02000000000000000000000000000000000000000000000000000000000000007effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80941617600255602435903361371f565b60025416176002555160018152f35b92503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103085773ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016926020825180927f313ce56700000000000000000000000000000000000000000000000000000000825281875afa908115610ef5578391610eb5575b5060ff90606094835194855260208501521690820152f35b90506020813d8211610eed575b81610ecf60209383612868565b81010312610ee9575160ff81168103610ee9576060610e9d565b8280fd5b3d9150610ec2565b505051903d90823e3d90fd5b92503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261030857805191809380549160019083821c9282851694851561104b575b602095868610811461101f57858952908115610fdd5750600114610f85575b6103048787610f7b828c0383612868565b5191829182612410565b81529295507f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5b828410610fca575050508261030494610f7b92820101943880610f6a565b8054868501880152928601928101610fac565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168887015250505050151560051b8301019250610f7b826103043880610f6a565b6024846022857f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b93607f1693610f4b565b503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103085760209073ffffffffffffffffffffffffffffffffffffffff600654169051908152f35b503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103085760207f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2589161111d73ffffffffffffffffffffffffffffffffffffffff600654163314612732565b611125612797565b60017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00603854161760385551338152a180f35b50346103085760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610308578060209273ffffffffffffffffffffffffffffffffffffffff6111a9612607565b1681526005845220549051908152f35b50505050610223612681565b503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610308576020905173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b823461066a5760a07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261066a5761126b612607565b6044359273ffffffffffffffffffffffffffffffffffffffff808516926024359284870361143c576064359660843596871515880361066a5750600254966112b960028960f81c14156126cd565b7f02000000000000000000000000000000000000000000000000000000000000007effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8099161760025561130a826136ae565b1561140d5785156113e557611330918691156113d65761132a82306139af565b84613344565b968088106113a1576020888a7f01000000000000000000000000000000000000000000000000000000000000008a8a8a8a8a8651928352878984015216907faee47cdf925cf525fdae94f9777ee5a06cac37e1c41220d0a8a89ed154f62d1c863392a4600254161760025551908152f35b60449250878951927fbfee4ca00000000000000000000000000000000000000000000000000000000084528301526024820152fd5b6113e082336139af565b61132a565b828a517fc3d83b07000000000000000000000000000000000000000000000000000000008152fd5b602483888c51917f88a50561000000000000000000000000000000000000000000000000000000008352820152fd5b8580fd5b503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610308576020905173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b50346103085760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261030857602090610b296114ec612607565b73ffffffffffffffffffffffffffffffffffffffff16600052600060205260406000205490565b503461030857807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261030857806103049261154f612607565b61155761262a565b73ffffffffffffffffffffffffffffffffffffffff91821683526039602090815284842091909216835281529190205491516fffffffffffffffffffffffffffffffff8316815260809290921c908201529081906040820190565b503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103085760209060ff6038541690519015158152f35b503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610308576020905173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b9034610ee957827ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610ee9576007549073ffffffffffffffffffffffffffffffffffffffff9283831691823303611711575050806006549384167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08680a37fffffffffffffffffffffffff0000000000000000000000000000000000000000809316176006551660075580f35b90602060649251917f08c379a0000000000000000000000000000000000000000000000000000000008352820152602060248201527f4f776e61626c653a2063616c6c657220213d2070656e64696e67206f776e65726044820152fd5b34610ee957827ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610ee9576117bf73ffffffffffffffffffffffffffffffffffffffff600654163314612732565b6038549060ff82161561181f57507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff006020921660385551338152a180f35b60649060208451917f08c379a0000000000000000000000000000000000000000000000000000000008352820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152fd5b503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261030857602090610b296118c36118bc61346d565b91906132db565b61330b565b503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610308576020905173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261030857602090610b29614020565b503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610308576020905160ff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b8290346103085760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261030857611a04612607565b611a0c61262a565b90604435928560025495611a2660028860f81c14156126cd565b7f02000000000000000000000000000000000000000000000000000000000000007effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8098161760025573ffffffffffffffffffffffffffffffffffffffff8416815260016020528181203382526020522054907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611af0575b6020877f010000000000000000000000000000000000000000000000000000000000000088610deb89898961371f565b848210611b3d5750926020959492610deb92611b30837f010000000000000000000000000000000000000000000000000000000000000097033383613bc4565b9250929495819450611ac0565b60649060208851917f08c379a0000000000000000000000000000000000000000000000000000000008352820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152fd5b505050506102236124c0565b925060807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261030857611bda612607565b91611be361262a565b6044359360643594600293845497611c00868a60f81c14156126cd565b7f02000000000000000000000000000000000000000000000000000000000000007effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff809a16178655611c50856136ae565b15611f6d578215611f465773ffffffffffffffffffffffffffffffffffffffff8581169586611eae57843403611e515784611c8a916131cf565b98808a10611e1c57508416938415611dbf57611cad90611ca8612797565b6129bc565b888811610308578554908989168a831601908a8211611d9357509380927f01000000000000000000000000000000000000000000000000000000000000009694927fff000000000000000000000000000000000000000000000000000000000000008c60209d98169116178855818152808b52888120611d2e8b8254612a94565b90557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8b8a518c8152a3865190815287898201527f5fe47ed6d4225326d3303476197d782ded5a4e9c14f479dc9ec4992af4e85d59873392a482541617905551908152f35b8360116024927f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b60648260208a51917f08c379a0000000000000000000000000000000000000000000000000000000008352820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152fd5b826044918b8b51927fbc71f2ba0000000000000000000000000000000000000000000000000000000084528301526024820152fd5b60648360208b51917f08c379a0000000000000000000000000000000000000000000000000000000008352820152600c60248201527f657468206d69736d6174636800000000000000000000000000000000000000006044820152fd5b88517f23b872dd0000000000000000000000000000000000000000000000000000000060208201523360248201523060448201528560648201526064815260a0810181811067ffffffffffffffff821117611f1a5791611f158792611c8a948d528a614195565b6131cf565b6024866041877f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b86517fa907f2f0000000000000000000000000000000000000000000000000000000008152fd5b8460249173ffffffffffffffffffffffffffffffffffffffff8951927faeabe7180000000000000000000000000000000000000000000000000000000084521690820152fd5b503461030857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610308576020907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600254169051908152f35b50903461066a57602091827ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103085761204b612607565b916120757f0000000000000000000000000000000000000000000000000000000000000000614158565b9261208084516128c1565b9473ffffffffffffffffffffffffffffffffffffffff91821691835b86518110156120db5780826120b36001938a6129a8565b511686526039845286862085875284528686205460801c6120d4828b6129a8565b520161209c565b8551838152806103048186018b61264d565b503461030857807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103085760209061213461212a612607565b6024359033613bc4565b5160018152f35b9034610ee95760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610ee957612173612607565b916024359182151583036122c35760443592831515840361143c5773ffffffffffffffffffffffffffffffffffffffff9485916121b583600654163314612732565b15612291571692831590811591612289575b501561222c575050806006549283167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08580a37fffffffffffffffffffffffff0000000000000000000000000000000000000000809216176006556007541660075580f35b90602060649251917f08c379a0000000000000000000000000000000000000000000000000000000008352820152601560248201527f4f776e61626c653a207a65726f206164647265737300000000000000000000006044820152fd5b9050866121c7565b9350505050167fffffffffffffffffffffffff0000000000000000000000000000000000000000600754161760075580f35b8480fd5b91903461240c57837ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261240c57600354600181811c9186908281168015612402575b60209586861082146123d65750848852908115612396575060011461233d575b6103048686610f7b828b0383612868565b929550600383527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b5b828410612383575050508261030494610f7b92820101948661232c565b8054868501880152928601928101612366565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001687860152505050151560051b8301019250610f7b826103048661232c565b8360226024927f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b93607f169361230c565b8380fd5b60208082528251818301819052939260005b858110612462575050507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8460006040809697860101520116010190565b818101830151848201604001528201612422565b90815180825260208080930193019160005b828110612496575050505090565b835173ffffffffffffffffffffffffffffffffffffffff1685529381019392810192600101612488565b5034612602576000807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261066a576040516060810181811067ffffffffffffffff8211176125d5576040526002815260403660208301376125238161296c565b73ffffffffffffffffffffffffffffffffffffffff90817f00000000000000000000000000000000000000000000000000000000000000001690528151600110156125a85761030492507f0000000000000000000000000000000000000000000000000000000000000000166040820152604051918291602083526020830190612476565b6024837f4e487b710000000000000000000000000000000000000000000000000000000081526032600452fd5b6024837f4e487b710000000000000000000000000000000000000000000000000000000081526041600452fd5b600080fd5b6004359073ffffffffffffffffffffffffffffffffffffffff8216820361260257565b6024359073ffffffffffffffffffffffffffffffffffffffff8216820361260257565b90815180825260208080930193019160005b82811061266d575050505090565b83518552938101939281019260010161265f565b50346126025760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126126025760206126c36126be612607565b6136ae565b6040519015158152f35b156126d457565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152fd5b1561273957565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b60ff603854166127a357565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152fd5b6080810190811067ffffffffffffffff82111761281d57604052565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040810190811067ffffffffffffffff82111761281d57604052565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff82111761281d57604052565b67ffffffffffffffff811161281d5760051b60200190565b906128cb826128a9565b6128d86040519182612868565b8281527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe061290682946128a9565b0190602036910137565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811461293d5760010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8051156129795760200190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b80518210156129795760209160051b010190565b6129c4612aa1565b90805115612a0d5773ffffffffffffffffffffffffffffffffffffffff83168015159081612a02575b506129f757505050565b612a0092612f0b565b565b9050301415386129ed565b505050565b612a1a612aa1565b91815115612a815773ffffffffffffffffffffffffffffffffffffffff9083838383168015159081612a76575b50612a65575b50505083168015159081612a0257506129f757505050565b612a6e92612f0b565b388383612a4d565b905030141538612a47565b50505050565b9190820391821161293d57565b9190820180921161293d57565b612aca7f0000000000000000000000000000000000000000000000000000000000000000614158565b90612ad582516128c1565b825115612f0857603a544303612b50575b6000805b8451811015612b4b578073ffffffffffffffffffffffffffffffffffffffff612b16612b4693886129a8565b51168352603b6020526fffffffffffffffffffffffffffffffff604084205416612b4082866129a8565b52612910565b612aea565b505090565b909143603a557effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60025416612ba37f0000000000000000000000000000000000000000000000000000000000000000614158565b936040517f4148530400000000000000000000000000000000000000000000000000000000815260208180612be460049960408b8401526044830190612476565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60248301520381600073ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000165af18015612ec657612edd575b5060005b8351811015612ed25773ffffffffffffffffffffffffffffffffffffffff612c7e82866129a8565b511673ffffffffffffffffffffffffffffffffffffffff612c9f83876129a8565b511680612e48575047905b80600052612cc7603b928360205260406000205460801c90612a87565b9181600052806020526fffffffffffffffffffffffffffffffff60406000205416918215612e3f575b86612e21575b6fffffffffffffffffffffffffffffffff8311612602576000526020526fffffffffffffffffffffffffffffffff604060002091167fffffffffffffffffffffffffffffffff000000000000000000000000000000008254161790556fffffffffffffffffffffffffffffffff8111612602576fffffffffffffffffffffffffffffffff60406000209116815460801c01906fffffffffffffffffffffffffffffffff8211612df357612dee9291612de991906fffffffffffffffffffffffffffffffff7fffffffffffffffffffffffffffffffff0000000000000000000000000000000083549260801b169116179055565b612910565b612c56565b6011887f4e487b71000000000000000000000000000000000000000000000000000000006000525260246000fd5b91612e3990612e33886118c3876132db565b90612a94565b91612cf6565b60019250612cf0565b6020602491604051928380927f70a08231000000000000000000000000000000000000000000000000000000008252308d8301525afa908115612ec657600091612e94575b5090612caa565b90506020813d602011612ebe575b81612eaf60209383612868565b81010312612602575138612e8d565b3d9150612ea2565b6040513d6000823e3d90fd5b509291935050612ae6565b602090813d8311612f01575b612ef38183612868565b810103126126025738612c52565b503d612ee9565b90565b9092919273ffffffffffffffffffffffffffffffffffffffff8083169283151580613119575b156130ea57612f619073ffffffffffffffffffffffffffffffffffffffff16600052600060205260406000205490565b9160005b81518110156130e15782612f7982846129a8565b511690612f8681896129a8565b51826000526039906020908282526040806000208a60005283526fffffffffffffffffffffffffffffffff918282600020541680156130d9575b8181146130c957670de0b6b3a7640000612fe6612fe06130059385612a87565b8d6132f8565b0488600052868652836000208d6000528652836000205460801c612a94565b9183821161260257838311612602578051948186019686881067ffffffffffffffff89111761281d576130c499868095612de99a86521688528483890196168652600052815281600020908d600052526000209351167fffffffffffffffffffffffffffffffff0000000000000000000000000000000084541617835551166fffffffffffffffffffffffffffffffff7fffffffffffffffffffffffffffffffff0000000000000000000000000000000083549260801b169116179055565b612f65565b5050505050506130c49150612910565b506001612fc0565b50505050509050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fd5b5030841415612f31565b61314c7f0000000000000000000000000000000000000000000000000000000000000000614158565b9061315782516128c1565b91600090815b8151811015612a0d578073ffffffffffffffffffffffffffffffffffffffff613188600193856129a8565b51168452603b6020526fffffffffffffffffffffffffffffffff6040852054166131b282886129a8565b520161315d565b9190826040910312612602576020825192015190565b73ffffffffffffffffffffffffffffffffffffffff9081167f0000000000000000000000000000000000000000000000000000000000000000821603613213575090565b6040906064600093835194859384927f3edd1128000000000000000000000000000000000000000000000000000000008452817f000000000000000000000000000000000000000000000000000000000000000016600485015260248401528160448401527f0000000000000000000000000000000000000000000000000000000000000000165af1908115612ec6576000916132ae575090565b6132cf915060403d81116132d4575b6132c78183612868565b8101906131b9565b905090565b503d6132bd565b90670de0b6b3a76400009182810292818404149015171561293d57565b8181029291811591840414171561293d57565b8115613315570490565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b907f00000000000000000000000000000000000000000000000000000000000000009073ffffffffffffffffffffffffffffffffffffffff9081811682841603613395575050612f089183916143d6565b915093929160406133b46000946118c36133ad61346d565b92906132f8565b9560648251809681937fead5d359000000000000000000000000000000000000000000000000000000008352807f00000000000000000000000000000000000000000000000000000000000000001660048401528a60248401528160448401527f0000000000000000000000000000000000000000000000000000000000000000165af1918215612ec657612a00938693613450575b506143d6565b6134679060403d81116132d4576132c78183612868565b5061344a565b604051907f993dadeb00000000000000000000000000000000000000000000000000000000825273ffffffffffffffffffffffffffffffffffffffff91827f0000000000000000000000000000000000000000000000000000000000000000166004820152827f00000000000000000000000000000000000000000000000000000000000000001660248201526020908181604481877f0000000000000000000000000000000000000000000000000000000000000000165afa908115612ec6576000916135cc575b50908060049294604051938480927f18160ddd0000000000000000000000000000000000000000000000000000000082527f0000000000000000000000000000000000000000000000000000000000000000165afa908115612ec6576000916135a0575b50905090565b82813d83116135c5575b6135b48183612868565b8101031261066a575051803861359a565b503d6135aa565b908282813d83116135f2575b6135e28183612868565b8101031261066a57505181613536565b503d6135d8565b73ffffffffffffffffffffffffffffffffffffffff807f00000000000000000000000000000000000000000000000000000000000000001691161460001461363e5790565b612f08906118c361364d61346d565b90926132f8565b73ffffffffffffffffffffffffffffffffffffffff807f0000000000000000000000000000000000000000000000000000000000000000169116146000146136995790565b612f08906118c36136a861346d565b926132f8565b73ffffffffffffffffffffffffffffffffffffffff809116817f00000000000000000000000000000000000000000000000000000000000000001681149182156136f757505090565b7f00000000000000000000000000000000000000000000000000000000000000001614919050565b909173ffffffffffffffffffffffffffffffffffffffff9182811692831561392b5784169384156138a757848414613849576137629161375d612797565b612a12565b6000828152806020526040812054918083106137c557604082827fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9587602096528286520382822055868152206137ba828254612a94565b9055604051908152a3565b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e636500000000000000000000000000000000000000000000000000006064820152fd5b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f45524332303a207472616e7366657220746f2073656c660000000000000000006044820152fd5b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f65737300000000000000000000000000000000000000000000000000000000006064820152fd5b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f64726573730000000000000000000000000000000000000000000000000000006064820152fd5b73ffffffffffffffffffffffffffffffffffffffff8116908115613b40576139d990611ca8612797565b600091818352826020526040832054818110613abc578190838552846020520360408420557effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80821161240c576002549080831681831603818111613a8f57917fff000000000000000000000000000000000000000000000000000000000000007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef949260209416911617600255604051908152a3565b6024867f4e487b710000000000000000000000000000000000000000000000000000000081526011600452fd5b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60448201527f63650000000000000000000000000000000000000000000000000000000000006064820152fd5b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360448201527f73000000000000000000000000000000000000000000000000000000000000006064820152fd5b73ffffffffffffffffffffffffffffffffffffffff809116918215613cb65716918215613c325760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925918360005260018252604060002085600052825280604060002055604051908152a3565b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f73730000000000000000000000000000000000000000000000000000000000006064820152fd5b60846040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f72657373000000000000000000000000000000000000000000000000000000006064820152fd5b6005811015613f2f5780613d4a5750565b60018103613db05760646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152fd5b60028103613e165760646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152fd5b60038103613ea25760846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c60448201527f75650000000000000000000000000000000000000000000000000000000000006064820152fd5b600414613eab57565b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c60448201527f75650000000000000000000000000000000000000000000000000000000000006064820152fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b9291907f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083116140145760ff16601b81141580614009575b613ffd579160809493916020936040519384528484015260408301526060820152600093849182805260015afa15613ff057815173ffffffffffffffffffffffffffffffffffffffff811615613fea579190565b50600190565b50604051903d90823e3d90fd5b50505050600090600490565b50601c811415613f96565b50505050600090600390565b73ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001630148061412f575b15614088577f000000000000000000000000000000000000000000000000000000000000000090565b60405160208101907f000000000000000000000000000000000000000000000000000000000000000082527f000000000000000000000000000000000000000000000000000000000000000060408201527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a082015260a0815260c0810181811067ffffffffffffffff82111761281d5760405251902090565b507f0000000000000000000000000000000000000000000000000000000000000000461461405f565b90604051916141668361284c565b600183526020368185013773ffffffffffffffffffffffffffffffffffffffff61418f8461296c565b91169052565b73ffffffffffffffffffffffffffffffffffffffff16906040516141b88161284c565b6020928382527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c656484830152803b156142c4579061420d9160008481959282888195519301915af1614207614322565b90614380565b80518061421a5750505050565b81849181010312610308578201519081159182150361066a575061424057808080612a81565b608490604051907f08c379a00000000000000000000000000000000000000000000000000000000082526004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f742073756363656564000000000000000000000000000000000000000000006064820152fd5b606484604051907f08c379a00000000000000000000000000000000000000000000000000000000082526004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152fd5b3d1561437b573d9067ffffffffffffffff821161281d576040519161436f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8401160184612868565b82523d6000602084013e565b606090565b9091901561438c575090565b81511561439c5750805190602001fd5b6143d2906040519182917f08c379a000000000000000000000000000000000000000000000000000000000835260048301612410565b0390fd5b8215612a0d5773ffffffffffffffffffffffffffffffffffffffff9081169081614473575050600080809381935af161440d614322565b501561441557565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f6574682073656e64206661696c656400000000000000000000000000000000006044820152fd5b92612a0093604051937fa9059cbb0000000000000000000000000000000000000000000000000000000060208601521660248401526044830152604482526144ba82612801565b61419556fea2646970667358221220a2b04f00904acf7fcf39ca11a1b9f1493fd822eeb5419627f538dacaabf3c8df64736f6c634300081100338b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f00000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000120000000000000000000000000f939e0a03fb07f59a73314e73794be0e57ac1b4e000000000000000000000000b27d1729489d04473631f0afaca3c3a7389ac9f800000000000000000000000096efdf95cc47fe90e8f63d2f5ef9fb8b180daeb9000000000000000000000000361384a0d755f972e5eea26e4f4efbaf976b646100000000000000000000000032a4bcd8dea5e18a12a50584682f8e4b77fff2df000000000000000000000000000000000000000000000000000000000000000e53592053696c6f20637276555344000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e53592d53696c6f20637276555344000000000000000000000000000000000000